本文主要介绍下ForEach控制器的基本用法~
ForEach控制器一般和用户自定义变量一起使用,从用户自定义变量中读取一系列相关的变量。该控制器下的采样器或控制器都会被执行一次或多次,遍历读取不同的变量值。
下面用两个简单的例子介绍下用法:
例1:ForEach控制器结合用户自定义变量使用,遍历用户自定义变量
(1)添加配置元件-用户自定义变量如下图:
(2)设置ForEach控制器如下图:
名称:字面意思,ForEach Controller的名称
注释:字面意思
输入变量前缀:变量的前缀;如要使用的变量为name_1,则需要填name。
Start index for loop(exclusive):从X-1号的变量开始,X为第几个变量;如填0,实际从第一个开始。
End index for loop(inclusive):到X+1的变量结束,X为第几个变量;如填4,实际第4个不会被使用,只会到第3个。
输出变量名称:将要用来使用的变量名
Add“_”before number?:用户定义的变量有没有下划线分隔编号,最好还是勾上比较方便标识;
(3)引用变量,引用变量的名称与ForEach控制器中输出变量名称一致
(4)查看运行结果。
由上图我们可以看出,用户自定义变量设置了3个值,遍历变量值执行了3次登录接口。
例2:从上面的取样器中提取的多个结果用ForEach控制器依次传参
本例是先登录,登录后请求当前登录用户的目前权限接口,从接口响应数据中获取有权限的子目录的url,并且请求每一个子目录。
(1)在查询目录权限接口添加后置处理器-正则表达式提取器,提取全部URL。如下图:
(2)设置ForEach控制器如下图:
(3)引用ForEach控制器的变量menu_url
(4)运行并查看结果
从上图中我们可以看出的运行的结果跟是一致的。
有兴趣可以关注我的微信公众号“自动化测试全栈”,微信号:QAlife,学习更多自动化测试技术。
也可加入我们的自动化测试技术交流群,QQ群号码:301079813;Jmeter/Loadrunner性能测试交流群QQ群:541897224
主要探讨loadrunner/JMeter测试、Selenium/RobotFramework/Appium自动化测试、接口自动化测试,测试工具等测试技术,让我们来这里分享经验、交流技术、结交朋友、拓展视野、一起奋斗!