变量定义与优先级
在编排测试场景中,可将重复引用的内容定义为公共变量,便于测试场景的编写与维护。
变量的类型
变量名需要以字母开头,由数字、字母和下划线组成;变量内容支持由字符串和公共函数组合。
自定义变量
1.全局自定义变量
如需在整个测试场景中频繁使用某个变量,可定义全局自定义变量。
在测试场景中选择 全局配置 -> 全局变量 -> 自定义变量
点击“添加变量”,定义全局自定义变量
2.链路自定义变量
如需在指定链路下频繁使用某个变量,可定义链路自定义变量。执行链路、前置处理、后置处理均支持定义链路自定义变量
在指定链路选择 链路变量 -> 自定义变量
点击“添加变量”,定义链路自定义变量
文件变量(csv文件)
针对压力测试场景,如需大量测试数据(如cookie,orderID等),可通过绑定csv文件从而定义文件变量实现。
1.全局文件变量
对于多条链路可共享的测试数据,推荐使用全局文件变量。
在压测计划中选择 全局配置 -> 全局变量 -> 文件变量
点击“添加文件”,绑定包含测试数据的csv文件
在弹窗中选择需要绑定的csv文件即可
文件相关配置如下:
配置项 | 说明 | 默认值 |
---|---|---|
读取方式 | 从文件读取测试数据的方式,顺序读取或随机读取 | 顺序 |
轮询设置 | 从文件读取测试数据的次数,循环读取或仅读取一次 | 循环执行 |
切分文件 | 指各压力机被分配到的文件形式。如果选择切分文件,分配给各压力机的数据片段不重复;否则,每台压力机得到的均是完整文件。 | 不切分 |
通过重新定义文件内各变量名称,避免与其他自定义变量重名。也可与原变量名保持一致。
注意:如果已绑定的csv文件被删除,需要在对应压测场景中移除该文件,方可正常执行压测任务。
2.链路文件变量
对于仅一条链路下接口共用的测试数据,可在指定链路配置文件变量。
在指定链路选择 链路变量 -> 文件变量
点击“添加文件”,绑定包含测试数据的csv文件
环境变量
在测试场景中指定已创建好的“环境名称”,如果还没创建过环境,点击“新建环境”即可
在指定环境后,即可在场景编写过程中引用环境变量。
变量的引用
在测试场景中多处可引用公共变量,其中包括:服务URL、请求头、请求体、请求参数、请求结果断言、前置处理器、后置处理器等。
在填写接口请求信息时,可通过公共变量/环境变量选择所需的变量。
选择所需变量,点击”复制“
在所需变量的编辑框”粘贴“即可
变量的优先级
类型 | 说明 | 生效范围 |
---|---|---|
全局自定义变量 | 通过定义变量,便于接口引用 | 当前整个压测场景 |
全局文件变量 | 通过绑定csv文件,准备测试数据 | 当前整个压测场景 |
链路自定义变量 | 通过定义变量,便于接口引用 | 当前链路 |
链路文件变量 | 通过绑定csv文件,准备测试数据 | 当前链路 |
环境变量 | 通过测试配置->环境管理配置 | 跨测试场景均可使用 |
对于同名变量,其执行优先级如下:
文件变量>链路变量>环境变量>全局变量
*每个引用文件变量的请求在执行前都会读取文件,自定义变量和环境变量仅会在测试场景执行前赋值一次