Jmeter系列-控制器Controllers的介绍(8)

Controllers 简介

JMeter是一款功能强大的性能测试工具,而控制器是JMeter中非常重要的一个组件。控制器用于控制测试计划的执行流程,可以根据需求来控制线程的启动、停止、循环等操作。

  • Jmeter有两种类型的控制器:Samplers(取样器)和Logical Controllers(逻辑控制器);它们驱动着测试的进行
  • 取样器:让Jmeter 发送请求到服务器
  • 逻辑控制器:可以自定义决定发送请求的时机的逻辑
  • 控制器是为了控制取样器的执行条件

Samplers(取样器)

取样器(Sampler)是性能测试中向服务器发送请求,记录响应信息,记录响应时间的最小单元,JMeter 原生支持多种不同的sampler , 如 HTTP Request Sampler 、 FTP Request Sampler 、TCP Request Sampler 、 JDBC Request Sampler 等,每一种不同类型的 sampler 可以根据设置的参数向服务器发出不同类型的请求。

在Jmeter的所有Sampler中,Java Request Sampler与BeanShell Requst Sampler是两种特殊的可定制的Sample


特性

  • 每个取样器都有几个可以设置的属性
  • 也可以向测试计划或线程组中添加多个Config Element(配置元件)来更进一步自定义取样器
  • 最后,要在测试计划中添加一个Listener(监听器),以便查看请求结果,或存储结果到磁盘

Logical Controllers(逻辑控制器)

  • 逻辑控制器可以自定义决定发送请求的时机的逻辑
  • 还可以更改其子元件的请求的顺序
  • 逻辑控制器可以组合使用,然后获取不同的结果

逻辑控制器,包括两类无件,一类是用于控制test plan 中 sampler 节点发送请求的逻辑顺序的控制器,常用的有 如果(If)控制器 、 switch Controller 、Runtime Controller、循环控制器等。另一类是用来组织可控制 sampler 来节点的, 如 事务控制器、吞吐量控制器。

简单介绍

逻辑控制器

逻辑控制器用于控制测试计划中的执行流程,常用的逻辑控制器有以下几种:

  • If控制器:根据条件判断来控制是否执行某个步骤。
  • While控制器:在满足条件的情况下,循环执行某个步骤。
  • Loop控制器:循环执行某个步骤一定次数。
  • Switch控制器:根据条件判断来选择执行哪个步骤

循环控制器

循环控制器用于控制测试计划中的循环执行次数,常用的循环控制器有以下几种:

  • Loop Controller:循环执行某个步骤一定次数。
  • While Controller:在满足条件的情况下,循环执行某个步骤。
  • Foreach Controller:遍历一个集合,循环执行某个步骤。

随机控制器

随机控制器用于随机选择执行测试计划中的某个步骤,常用的随机控制器有以下几种:

  • Random Controller:随机选择执行某个步骤。
  • Random Order Controller:随机选择执行测试计划中的所有步骤。

条件控制器

条件控制器用于根据条件判断来控制测试计划中的执行流程,常用的条件控制器有以下几种:

  • If Controller:根据条件判断来控制是否执行某个步骤。
  • While Controller:在满足条件的情况下,循环执行某个步骤。
  • Switch Controller:根据条件判断来选择执行哪个步骤。
相关推荐
查拉图斯特拉面条1 天前
JMeter 实战技巧:JSON 数组筛选指定对象并剔除首尾大括号
jmeter·json
查拉图斯特拉面条1 天前
JMeter 实战:JSON 响应中文节点 + 数值精准断言(附真实接口案例)
jmeter·json
qq_4924484463 天前
Jmeter Transaction Controller(事务控制器) 的 TPS(每秒事务数)严格固定为 1
java·开发语言·jmeter
Rookie_hh3 天前
使用Jmeter进行性能测试
jmeter
qq_452396236 天前
第十四篇:《JMeter插件扩展:自定义函数与第三方插件》
开发语言·python·jmeter
qq_452396236 天前
第十三篇:《分布式压测:JMeter Master-Slave集群》
分布式·jmeter
qq_452396237 天前
第十一篇:《性能压测基础:JMeter线程模型与压测策略设计》
java·开发语言·jmeter
沫沫-小白7 天前
JMeter 上传固定文件时,如何修改 Content-Disposition 的 filename
jmeter
qq_452396238 天前
第六篇:《JMeter逻辑控制器:循环、条件和交替执行》
android·java·jmeter
qq_4523962310 天前
第四篇:《JMeter参数化:CSV数据文件与用户变量》
jmeter