Jmeter 逻辑控制器总结

本文主要总结Jmeter的逻辑控制器;

逻辑控制器下一共16个控制器:

1、foreach controller循环控制器

定义变量数组,按数组遍历循环

2、simple controller 简单控制器

不改变元件的执行顺序,指定了一个执行单元;

3、include controller

导入外部的测试片段,不能有线程组,只能包含简单控制器及控制器下的元件;

4、runtime controller

控制其子元件的执行时长;

runtime默认为1,去掉1则默认为0,此时不执行其节点下的元件;

5、switch controller

switch条件控制器,指定运行的取样器编号,该节点下的元取样器从0排序,编号是多少,则执行该取样器;

如果指定的编号超出了节点数或者不指定,则运行第0个取样器。

也可指定取样器名称,此时大小写、空格都敏感;

如果匹配不上,则不运行取样器;

6、while controller

其节点下的元件将一直运行直到while条件为false;

另外提供以下三个常量:

Blank:当循环中有取样器失败后停止;

LAST:当循环中有取样器失败则不进入循环;

Otherwise:当判断条件为false时停止循环;

7、interleave controller交替控制器

其节点下的取样器会交替执行;即控制器下有三个取样器,则第一次循环只执行第一个取样器;循环第二次时执行第二个取样器;

8、once only controller仅一次控制器

此控制器的子元件只运行一次,即使把仅一次控制器放在循环控制器下面,也只是运行一次;

9、throughput controller

用来控制其下元件的执行次数,并无控制吞吐量的功能;

详情见P93;

10、if controller条件控制器

通过某个条件来控制此节点下的元件是否运行。

可直接取值true\false的变量,也可通过语句取得的值;

11、module controller模块控制器

在当前测试计划中引入新的测试片段;

12、random controller随机控制器

节点下的元件随机运行,与交替控制器不一样的是节点下的元件运行顺序不定;

13、random order controller

其节点下的元件随机执行,不过每个元件只执行一次,顺序是随机的;

14、loop controller

控制在其节点下的元件的执行次数;

如果在线程组中也设置了执行次数,则循环控制器下元件的执行次数是:线程组执行次数*循环控制器执行次数;

15、recording controller录制控制器

录制的时候用到的。当我们用JMeter代理进行录制时,录制的脚本默认放在此控制器的节点下面;

16、transaction controller事务控制器

可把其节点下的取样器执行消耗时间累加在一起;同时我们把每一个取样器的执行时间进行统计;

如果事务控制器下的取样器有多个,那么只有每一个取样器都运行成功了,整个事务控制器定义的事务才算成功,这是充分必要条件。

参考文献:

《全栈性能测试修炼宝典 JMeter实战》

原文地址:https://www.cnblogs.com/susan-su/p/9415363.html

时间: 2024-11-07 00:23:34

Jmeter 逻辑控制器总结的相关文章

【JMeter_17】JMeter逻辑控制器__随机顺序控制器<Random Order Controller>

随机顺序控制器<Random Order Controller> 业务逻辑: 当控制器被触发时,将控制器下的所有子节点顺序打乱执行一遍,执行一遍,执行一遍,不是执行一个. 注意:是将子节点的顺序打乱,而非请求的顺序打乱,子节点可以是其他逻辑控制器. 演示脚本: Demo_随机顺序处理器 随机控制器与随机顺序控制器名字十分接近,但两者还是有着明显的区别,可参考  JMeter逻辑控制器_随机控制器 随机控制器为每次只执行节点下的一个子节点,随机顺序控制器是将节点下的所有子节点都正常执行,只是将执

JMeter学习笔记--详解JMeter逻辑控制器

JMeter使用逻辑控制器来决定采样器的处理顺序 简单控制器(Simple Controller):存储设备(将某些采样器归组) 循环控制器(Loop Controller:设置循环次数 仅一次控制器(Once Only Controller) 交替控制器(Interleave Controller) 随机控制器(Random Controller) 随机顺序控制器(Random Order Controller): 每个子测试元件都至多执行一次,但是执行顺序是随机的 吞吐量控制器(Throug

jmeter 逻辑控制器

简单的控制器 简单的逻辑控制器可以让你组织你的采样器和其他 逻辑控制器. 不像其他逻辑控制器,该控制器不提供除此之外的功能 存储设备. 控制面板简单的控制器的截图 参数 在这个例子中,我们创建了一个测试计划,发送两个蚂蚁和两个HTTP请求 Log4J HTTP请求. 我们分组蚂蚁和Log4J请求安置在里面 简单的逻辑控制器. 记住,简单的逻辑控制器如何JMeter没有影响 流程控制器(s)添加到它. 所以,在这个例子中,JMeter发送的请求 以下订单:Ant主页,Ant新闻页面,Log4J主页

JMeter逻辑控制器

http://www.cnblogs.com/puresoul/p/4886574.html Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:"Logic Controllers determine the order in which Samplers are processed.".意思是说,逻辑控制器可以控制采样器(samplers)的执行顺序.由此可知,控制器需要和采样器一起使用,否则控制器就没有什么意义了.放在

【JMeter_14】JMeter逻辑控制器__交替控制器&lt;Interleave Controller&gt;

交替控制器<Interleave Controller> 业务逻辑: 根据被控制器触发执行次数,去依次执行控制器下的节点<逻辑控制器.采样器>. 被触发执行可以由线程组的线程数.循环次数.逻辑控制器触发. 如果不勾选忽略子控制器,交替执行时,节点下次一级每个采样器.逻辑控制器都认为是一个节点来交替执行. Ignore sub-controller blocks:忽略子控制器,勾选后,会无视节点下的所有控制器<交替控制器除外> Interleave across thre

jmeter逻辑控制器详解(2)

逻辑控制器 8.Runtime Controller 运行周期控制器,顾名思义,这是一种设置运行时间的控制器,它的效果就是使该控制器下的子项运行时间为[Runtime]中的数值(单位:s). Runtime Controller]的运行时间为[Runtime]的值乘以线程组循环次数. 这里循环次数设置为2,时间为2秒: 9.bzm - Weighted Switch Controller 权重开关控制器(直译),它能分配其子项目(Child Item)的权重,从而控制子项的执行概率.首先建立如下

Jmeter逻辑控制器: If控制器的解读

Jmeter官网其实有很详细的文档,点此跳转到官网,下面我来解读一下官网的文档,如有错误,欢迎指出. 一.官网解读 Name 在结果树中显示的名字. Comments 备注.相当于代码中的注释. Expression(must evaluate to true or false) 条件.默认使用JavaScript语言返回true或false. Interpret Condition as Variable Expression? 默认选中.若不选中,会影响性能. Evaluate for al

jmeter逻辑控制器-仅一次控制器、交替控制器

类型:仅一次控制器.交替控制器 说明:仅一次控制器和交替控制器是单线程的,可以设置单线程循环多次. 使用场景:仅一次控制器可用于登录.交替控制器可用于登录后的操作. 目录树结构:创建线程组,分别添加仅一次控制器.HTTP请求-用户管理.交替控制器.HTTP请求默认值.HTTP Cookie管理器.察看结果树,在仅一次控制器中添加HTTP请求-登录,在交替控制器中添加HTTP请求-人员管理.HTTP请求-人员恢复. 1.设置线程数为1,循环次数为1 执行结果为:HTTP-请求登录执行一次,HTTP

【JMeter_09】JMeter逻辑控制器__临界部分控制器&lt;Critical Section Controller&gt;

临界部分控制器<Critical Section Controller> 业务逻辑: 根据锁名来控制并发,同一个锁名之下,在同一时间点只能存在一个运行中,适用于控制并发的场景 锁名类型: 锁名为空,认为每个锁为不同的锁 锁名相同,多个锁认为是同一个锁,同一个时间点只能存在一个运行中 锁名为变量,根据变量值来判断是不是属于同一个锁,变量值为相同时,则认为是同一个锁 演示脚本: Demo_临界部分控制器 原文地址:https://www.cnblogs.com/fcholy/p/10902051.