3.8 While Controller
作用:循环执行控制器内所有采样器,直到条件为假时,停止循环
案例7
线程组下有3个查询学院请求[所有、指定、条件],使用While控制器无限循环执行下去。
操作步骤:
1. 测试计划->线程组
2. 线程组->逻辑控制器->While Controller
3. 随机控制器->HTTP请求(查询学院-所有)
4. 随机控制器->HTTP请求(查询学院-指定)
5. 随机控制器->HTTP请求(查询学院-条件)
6. 测试计划->察看结果树
While Controller控制器使用配置图

1. 为空:最后一个请求失败,停止循环;(如果不是最后一个请求执行失败,则继续循环)
2. LAST:
1) 与为空相同之处:最后一个请求失败,停止循环;(如果不是最后一个请求执行失败,则继续循环)
2) 与为空不同之处:测试计划在执行while控制器之前如果有请求失败,则不会执行while控制器
3. 表达式:表达式为false退出循环;
例如:
1) ${VAR}:当参数VAR的值被设置成false时退出循环
2) ${__javascript(“${VAR}”==”User1”)}:当参数VAR的值部位User1时退出循环
While Controller-总结
1. 作用
2. 取值为空和LAST
```python
作用:通过给该控制器中的value赋值,来指定运行哪个取样器;
案例8
线程组下有3个查询学院请求[所有、指定、条件],使用Switch控制器控制执行指定请求。
操作步骤:
1. 测试计划->线程组
2. 线程组->逻辑控制器->Switch Controller
3. 随机控制器->HTTP请求(查询学院-所有)
4. 随机控制器->HTTP请求(查询学院-指定)
5. 随机控制器->HTTP请求(查询学院-条件)
6. 测试计划->察看结果树
Switch Controller控制器配置图

1. Switch Value:为采样器名称;执行采样器名称相应的请求
2. Switch Value:为空;默认为执行第一个
3. Switch Value:为索引;第一个为0
Switch Controller-总结
1. 作用
2. 取值
4. 常用(分组类)
1. 简单控制器
2. 事务控制器
4.1 简单控制器
作用:只做分组使用,犹如打隔断;
备注:
添加简单控制器修改(查询学院),把(查询学院-所有、查询学院-指定)接口存放到此控制器下
简单控制器使用图

4.2 事务控制器
作用:生成一个额外的采样器来测量其下测试元素的总体时间;
值得注意的是,这个时间包含该控制器范围内的所有处理时间,而不仅仅是采样器的;
操作步骤分析
1. 测试计划->线程组
2. 线程组->逻辑控制器->事务控制器
3. 事务控制器->HTPP请求(查询所有、查询指定)
4. 测试计划->监听器->聚合报告
事务控制器使用图

事务控制器-总结:
1. 概念
2. 如何查看事务取样时间
5. 逻辑控制器-总结
1. 如果(If)控制器
2. ForEach控制器
3. 交替控制器
4. 循环控制器
5. 仅一次控制器
6. 随机控制器
7. 随机顺序控制器
8. While Controller
9. Switch Controller