一、条件控制器
官方文档:
当条件控制器中配置的条件满足时,条件控制器下的子步骤才会执行,否则子步骤会被跳过。
-
先创建控制器子模块和条件控制器场景
-
打开场景,添加一个条件控制器,变量如下,在条件控制器下可以添加子步骤(接口列表导入、场景导入、自定义请求)都可以
如下,先选择条件控制器,再添加一个任意自定义请求的接口
-
选择环境,在运行环境里面添加一个常量,l例如下,变量名name,值qy,接口和条件控制都引用这个环境名称
-
执行成功,如下,只要把条件控制器的变量名称在当前环境中对应变量值,就会执行成功
-
条件控制器:如果填一个没有的变量名或变量值,点击调试,都会没反应
-
查看条件控制器,条件有很多,私下可以慢慢调试
二、等待控制器
官方文档:
当某个步骤执行后需要等待一段时间时,可使用等待控制器进行控制。当作为步骤添加时,与之同级的所有步骤均会等待若干时间;作为某个步骤的子步骤添加时,该步骤将等待若干时间后再执行
- 在当前模块中添加一个等待控制器场景
- 在等待控制器场景中添加等待控制器,在同级下添加一个自动以请求或接口导入、接口列表导入都行,只能在同级添加,例如下,设置等待控制器为5000毫秒,就是等待5秒后再运行后面的接口,点击调试,等待5秒后,执行成功
- 如果在接口前面设置了等待,在接口中的前置又设置了等待,那么加起来就是10秒后才会执行这个接口,如下设置
同级接口前面的控制器: 针对所有后续的接口等待
接口内的前置等待控制器: 只针对当前接口等待
三、事务控制器
官方文档:
事务控制器将一组请求当成一个事务进行处理,比如用户一个动作包含很多个请求,这部分请求就都可以放在一个事务控制器下,当成一个事务,常用于性能测试
简单理解:事务由单个或多个接口组成一个整体业务
- 添加事务控制器,在事务控制器下导入场景或自定义请求,如下,点击调试,执行成功
四、循环控制器
先添加一个循环控制器场景
1. 循环控制器:次数循环
官方文档:
次数循环支持自定义设置次数、间隔等方式进行循环控制。
【循环次数】:该循环控制器下的子步骤总共执行的次数。
【循环间隔】:每次执行间的时间间隔,以毫秒为单位。
【成功后是否继续循环】:仅循环控制器下存在一个请求时可以关闭。当关闭时,若循环控制器下的请求是成功状态,则立即终止循环,无论有没有达到循环次数。可以用在异步请求后轮询查询执行结果的场景,当查询结果符合预期时终止循环,避免多余的查询操作。
- 设置为次数循环,默认0次,点击执行,没执行
- 设置循环1次,点击调试,成功请求1次
- 设置循环3次,点击调试后,显示都执行成功了,响应内容会展示循环次数
- 循环间隔,执行循环接口时之间的间隔时间,设置为1秒,点击调试,执行成功
2. ForEach循环
官方文档:
ForEach 循环一般配合列表变量使用,例如存在 ID_1,ID_2,ID_3 形式的一组变量时,可以通过 ForEach 循环使用其中每个 ID 发送特定请求。
【输出变量名称】:在循环中可以通过该变量引用到列表变量中当前迭代的变量值。
【输入变量前缀】:列表变量的变量前缀。
【循环间隔】:每次执行间的时间间隔,以毫秒为单位。
简单理解:主要作用就是用来遍历每个可迭代数组的数据(类似于python中的for循环),然后将遍历后的值,传递给后续进行某些操作
-
先看一下python中的for循环使用方法就明白了,列表有N个值,就循环N次,然后使用新数据替换(这个新数据就是当前循环内的接口)
-
在场景变量中设置变量为id,变量值1,2,3,id相当于上面的ids
-
看这里ForEach循环设置,给一个变量d,类似于for循环上面的i
-
点击调试,插件执行结果,里面有3个值就执行3次
-
不管前面变量值设置的是数字还是字符,都会把列表里面的个数转换成执行次数,列表里面有几个,就执行几次,可以换任意,记得中间间隔英文逗号
-
执行结果如下
3. While 循环
官方文档:
While 循环更为灵活,当配置的条件满足时循环会一直进行。
【变量】:要进行判断的变量。
【判断条件】:变量与期望值的比较方式。
【值】:要对变量进行判断的值。
【循环超时时间】:由于 while 循环的特殊性,当条件满足时将会一直循环,为了避免死循环的情况出现,用户可以配置循环超时时间,到超过该时间后,不管循环条件是否满足,循环都将被终止
-
还是以while循环为例,num初始值为0,
-
在当前场景设置一个变量为0
-
while循环设置变量小于5
-
还需要在接口前置操作设置如下(如果对其他语言熟练也可以使用其他语言)
-
查看调试,执行结果,成功循环5次,都成功请求成功