跳到主要内容

循环控制器

提示

支持按次数循环 满足条件跳出循环 循环遍历测试数据的循环类型;
循环测试数据支持 自定义上传csv文件的测试数据 前置步骤的返回结果 变量 固定值

如何添加循环控制器

添加循环控制器

添加步骤选择循环控制器

image.png

设置循环条件

在抽屉内设置循环条件

  • 完成遍历循环所有测试数据:需要设置测试数据,当所有测试数据执行完成会跳出循环
  • 按次数循环:按设定的固定次数进行循环,完成后跳出循环
  • 满足条件后跳出:支持设置一个判断条件,当条件满足后跳出循环

循环间隔:指每次循环之间的间隔时间

Timeout:指超时时间,超出后则跳出循环,默认为0,0表示不设置超时时间;设置timeout是为了避免造成死循环

组 117@1.5x.png

设置循环的测试数据

提示

当循环需要用到测试数据时,可以打开开关,设置测试数据,可以通过结合下方编写的实操场景来进行理解使用

变量

❗️❗️❗️变量必须为数组格式❗️❗️❗️

循环元素内容:通过固定变量名{{$item}}的方式使用
循环索引:通过固定变量名 {{$key}} 的方式使用,key值从0开始计数。

image.png

示例:

提示

数组下的item为对象时,我们需要引用到具体的字段名。 例如下方的示例,需要使用 email 这个字段的数据,直接用{{email}}的方式在接口中作为入参即可

[
{
"email": "test01@apipost.cn",
"password": "123456"
},
{
"email": "test02@apipost.cn",
"password": "123456"
},
{
"email": "test10@apipost.cn",
"password": "7777777"
}
]
提示

数组下的item不是对象时,只用通过固定的变量名{{$item}}在接口中作为入参即可

固定值

循环元素内容:通过固定变量名{{$item}}的方式使用
循环索引:通过固定变量名 {{$key}} 的方式使用,key值从0开始计数。

支持在输入框内输入要循环的固定的数据内容,使用英文 ,或者回车键分割每个元素

例如要循环的数据为:小明 小白 小红 小青,直接在输入框输入即可,然后在接口中通过变量{{$item}}引用测试数据,

image.png

前置步骤返回结果

❗️❗️❗️支持循环数组格式的的数据❗️❗️❗️

循环元素内容:通过固定变量名{{$item}}的方式使用。
循环索引:通过固定变量名 {{$key}} 的方式使用,key值从0开始计数。

组 118@1.5x.png

提示

注意:当接口返回的数据为一个对象时,需要参考下方的使用方式

接口返回的结果为对象

{
"data": {
"errcode": 0,
"errstr": "success",
"list": [
{
"email": "test01@apipost.cn",
"password": "123456"
},
{
"email": "test02@apipost.cn",
"password": "123456"
},
{
"email": "test10@apipost.cn",
"password": "7777777"
}
]
}
}

通过JsonPath表达式 $.data.list 提取到数组格式数据,如下

[
{
"email": "test01@apipost.cn",
"password": "123456"
},
{
"email": "test02@apipost.cn",
"password": "123456"
},
{
"email": "test10@apipost.cn",
"password": "7777777"
}
]

需要使用 email 这个字段的数据,直接用{{email}}的方式在接口中作为入参即可

测试数据

测试数据需要先上传一份测试数据,具体上传方式,可查看这里

选择使用的测试数据后,可在右侧进行数据预览

示例如下:
如果需要循环phone那一列的数据,直接在接口的入参参数值填写{{phone}},即可引用到这个测试数据
如果需要循环索引,直接使用{{$key}}这个变量名即可

image.png