jmeter学习6(逻辑控制器)

本文介绍了JMeter的逻辑控制器,包括If控制器、Loop Controller、Once Only Controller、Random Controller、Random Order Controller、Transaction Controller、Switch Controller和Throughput Controller。这些控制器帮助创建复杂测试流程,控制执行顺序和次数,以及实现特定的测试场景。例如,If控制器根据条件执行,Loop Controller设定循环次数,Transaction Controller用于统计子节点总时间,而Throughput Controller则可以按比例控制执行次数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以前对jemeter的了解太局限只能使用它进行简单的场景设置,现在慢慢学习更加深入,要创建更复杂的测试流程场景,逻辑控制器必不可少
这里写图片描述
jmeter中的逻辑控制器主要分为两大类型:
1、控制测试计划执行过程中节点的逻辑执行顺序
2、对测试计划中的脚本进行分组,方便JMeter统计执行结果以及进行脚本的运行时控制等
一、逻辑控制类:
1)如果(If)控制器
这里写图片描述
如上图添加if控制器,当条件满足threadNum>4时执行
选项:Interpret Condition as Variable Expression表示,判断变量值是否等于字符串true(不区分大小写),为true时执行
Evaluate for all children:如果选中这一项,在每个子结点执行前都会计算表达式 (我模拟的场景暂时没太理解这个选项的功能作用)
这种情况下勾选该选项有什么区别呢??
2、循环控制器(Loop Controller)
这里写图片描述
控制其下面子节点循环的次数,如上图控制“访问简书”这个sample循环执行五次
3、仅一次控制器(once only controller)
这里写图片描述
在测试计划执行期间,该控制器下的子结点对每个线程只执行一次,在整个测试计划中同一个线程的多次请求会被跳过。
这里写图片描述
如图虽然在循环内,但是一个线程只访问了一次“百度新闻”,该控制器可用于登录这个动作
4、Random Controller(随机控制器)
每次执行时,从其子节点中,随机选择一个进行执行
这里写图片描述
5、Random Order Controller(随机顺序控制器)
随机顺序控制器类似简单的控制器,它会一次执行每个子元素,但是节点的执行顺序是随机的(正常的情况下是依次按顺序执行)
6、事务控制器(transaction controller)
生成一个额外的采样器用于统计该控制器下子节点的所有时间。该统计数据可以在聚合报告中看到。
这里写图片描述
这里写图片描述
Generate parent sample:控制结果的显示结构。若勾选,总时长和子节点时长按层级显示,未勾选,平行显示
这里写图片描述
Include duration of timer and pre-post processors in generated sampler:勾选时,会统计定时器时间(默认仅统计采样器时间)
7、Switch控制器(Switch Controller)
Switch控制器通过给该控制器中的Value赋值,来指定运行哪个采样器。有两种赋值方式
1、这里写图片描述
2、这里写图片描述
得到的结果
这里写图片描述
在想实际应用场景该是怎样的
8、吞吐量控制器(Throughput Controller)
控制其下的子节点的执行次数与负载比例分配,也有两种方式:
Total Executions:设置运行次数
Percent Executions:设置运行比例(1~100之间)
设置循环次数5
这里写图片描述
吞吐量总次数设置为3
这里写图片描述
设置吞吐比例为40%
这里写图片描述
结果如下:不勾选per user选 项,执行次数=吞吐量值=3次;40% * 线程组循环次数5= 2次
这里写图片描述
当勾选per user:
执行次数=user数量(对应线程数) * 吞吐量值
执行次数=循环次数* 40%* user数量(对应线程数)
以上是部分逻辑控制器,以上只是简单的理解了逻辑控制器的含义与用法,我觉得具体的使用还需要根据测试过程中遇到的场景来进行选择,剩下的逻辑控制器有机会遇到的时候继续补充记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值