一、逻辑控制器概述
1、概述
逻辑控制器可以控制其下取样器何时执行以及执行的顺序,类似于计算机语言的流程控制语句,流程控制就是控制代码的执行顺序(分支+循环)。逻辑控制器自身的执行顺序是按位置顺序执行。
2、分类
简单控制器:最简单的逻辑控制器,他没有额外的功能,只是一个容器的功能,存放取样器等等原件。
分支控制器----if控制器:条件满足时,才执行控制器下的元件。
往复控制器---- forEach控制器、循环控制器:循环执行。
事务控制器:将控制器下的所有取样器作为一个事物统计、分析。
交替控制器:每次选取一个取样器执行。
二、逻辑控制器之if控制器
1、需求
测试计划中三个http请求分别访问百度、淘宝和京东不是无差异的都执行,而是有选择性的执行,定义一个用户定义的变量,如果值是百度,就访问百度,是淘宝就访问淘宝,是京东就访问京东。
2、实现思想:
3、具体实现
(1)搭框架(测试计划,线程组, 结果树),并添加用户定义的变量组件,添加变量,如下图所示:
(2)线程组右键----添加----逻辑控制器----如果(if)控制器,编辑if控制器条件,如下图所示:
(3)在if控制器下创建HTTP请求,如下图所示:
(4)运行测试计划,查看结果树。满足if控制器的条件则运行,否则不予运行,如下图所示:
二、逻辑控制器之循环控制器
1、需求
循环查询所有学院信息10次。
2、思考题
线程组属性可以控制循环次数,那么循环控制器有什么用?-----------循环控制器更灵活,线程组循环是组内所有请求都循环执行,循环控制器可以只是让组内指定的请求循环。
3、实现思想:
4、具体实现
(1)搭框架(测试计划,线程组, 结果树),设置线程组的循环次数为1,如下图所示:
(2)线程组右键----添加----逻辑控制器----循环控制器,设置循环控制器循环次数,如下图所示:
(3)在循环控制器下创建HTTP请求,如下图所示:
(4)运行测试计划,查看结果树。按照循环次数循环执行HTTP请求,如下图所示:
三、逻辑控制器之forEach控制器
1、需求
有一组关键字[hello.python,测试]要依次取出,并在百度搜索
2、实现思想:
3、具体实现
(1)搭框架(测试计划,线程组, 结果树),并添加用户定义的变量组件,添加一组变量,如下图所示:
(2)线程组右键----添加----逻辑控制器----forEach控制器,输入变量前缀和索引,如下图所示:
(3)在forEach控制器下创建HTTP请求,如下图所示:
(4)运行测试计划,查看结果树。百度遍历搜索用户定义的变量中的一组数据,如下图所示:
三、总结
1、概述
控制取样器的执行顺序(分支+循环)的组件,为了实现多样的业务逻辑
2、控制器
原文:https://www.cnblogs.com/geqiandeqingmu/p/13088516.html