逻辑控制器: 请求过程中,需要一些进行逻辑处理的控制器。如: 用户必须是登录成功后,才可访问个人信息页面
-
关键部分控制器,用于核心部分的控制,但此部分的内容在一个线程中仅会执行
一次
-
应用场景: 用户登录
-
配制说明
-
遍历变量中的所有值
-
应用场景: 遍历变量的所有值。如:获取用户ID列表,再依次查看用户用户信息
-
配制说明
-
示例参考: ForEachController.jmx
-
If
状态判断控制器 -
配制说明
-
示例参考: IfController.jmx
-
引用外部
测试计划
控制器 -
应用场景: 测试过程中,需要引用外部的
测试计划
-
配制说明
-
示例参考: IncludeController.jmx
-
间隔控制器,每个
线程
用户仅执行一次控制器内的请求,线程
用户依据循环的次数请求控制器中的请求数 -
配制说明
-
示例代码: Interleave.jmx
-
循环控制器
-
应用场景: 指定循环次数或无限次循环
-
配制说明
-
示例代码: LoopController.jmx
-
模块控制器,用于跳转到
选定
的控制器位置并执行对应的控制器
-
应用场景: 业务逻辑的跳转
-
配制说明
-
示例代码: ModuleController.jmx
-
每个
线程
用户仅运行一次 -
应用场景: 在
线程
中仅需要运行一次,后续不需要再次运行。如: 创建用户 -
配制说明
-
示例参考: OnceOnlyController.jmx
-
随机控制器,随机选择控制器中的请求进行执行
-
应用场景: 页面的随机访问
-
配制说明
-
示例代码: RandomController.jmx
-
随机顺序执行,与
Random Controller
不同的是,这个控制器会先将需要随机的内容均执行一遍,但次序不定 -
应用场景: 页面的随机访问,但均需要访问,且次序不限
-
配制说明
-
录入控制器,直接使用JMeter的代理来录入
浏览器
的请求信息- 录入时,需要设置浏览器的
代理地址及端口
- 录入时,需要设置浏览器的
-
应用场景: 针对浏览器的请求信息进行
录入
-
配制说明
-
Recording Controller
自身不需要配制,但需要HTTP(S) Test Script Recorder
和HTTP Request Defaults
的配制 -
HTTP Request Defaults
: 配制Web Server-Server Name or IP
中配制需要录入的目标地址
的根URL -
HTTP(S) Test Script Recorder
-
-
示例代码: RecordingController.jmx
-
运行时间控制器,设置控制器中的请求运行时间,单位:
秒
-
应用场景: 对业务请求时间进行限制
-
配制说明
-
示例代码: RuntimeController.jmx
-
简单控制器,不提供任何
逻辑控制功能
-
应用场景: 请求的管理
-
配制说明
-
示例代码: SimpleController.jmx
-
跳转控制器,类似编程语言中的
Switch
语法功能 -
应用场景: 满足条件执行的控制器
-
配制说明
-
示例代码: SwitchController.jmx
-
别被名字迷惑了,跟
吞吐量
没任何关系。用于控制多久执行一次,有两种方式: 百分比和执行次数 -
应用场景: 限制请求的执行比率或执行次数
-
配制说明
-
示例代码: ThroughputController.jmx
-
事务控制器,类似LR中的事务
-
应用场景: 完成一个完整的页面请求或一组请求
-
配制说明
-
循环控制器,与开发语言中的
While
功能一致。直到条件为false
时,停止运行 -
应用场景: 循环执行一个请求,仅判断一种状态下退出循环
-
配制说明
-
示例代码: WhileController.jmx