故事背景

上一篇,学习了6个控制器3、《Jmeter基础篇》 从此善用逻辑控制器(1)。今天我们继续再学习6个。

逻辑控制器

逻辑控制器,用来确定采样器的执行顺序。一共有17个控制器。本次继续介绍一下前6个控制器。

7.循环控制器

8.Runtime Controller

9.如果(if)控制器

10.While Controller

11.Switch Controller

12.ForEach 控制器

7.循环控制器

线程执行到该控制器时,其下的所有HTTP请求,会循环执行N次。

循环次数:设置为N,则该控制器下的Samplers会运行N次。

8.Runtime Controller

控制它的所有子节点运行多久。

Runtime(seconds):设置为N,则其下左右节点的运行时间为N秒。入去其下所有节点,跑完一轮,耗费时间小于N秒,此时,再从头执行一边,直到执行时间等于N,跳出控制器。

9.如果(if)控制器

根据控制器设置的条件,进行判断,如果符合条件,则执行该控制器下面所有的子节点,否则不执行。如果什么条件都不设置,则不会执行它下面的节点。

1.条件:如上图举例。如果变量a和变量b的值相等,则执行这个控制器下面的子节点。

2.Interpret Condition as Variable Expression?:这个选项勾选了之后,条件中,如果写“${a}" == "${b}”(及时变量a和变量b的值相等,也不会执行)。这个地方,就必须要填写一个返回True的表达式,比如${JMeterThread.last_sample_ok},这样的表达式。

3.Evaluate for all children:假如这个控制器下面,有3个HTTP请求。如果需要在执行每个HTTP请求前,进行判断是否满足控制器中的条件,则需要勾选该复选框。

10.While Controller

执行该控制器下所有节点,直到它的条件被判断为false。如果条件中什么都不填,则认为是false。

哪些条件会导致While Controller退出?

1.条件中什么也没有填写
2.条件中的方法或者变量为false
3.这个控制器下的sampler执行结果失败

11.Switch Controller

根据条件,判断执行这个控制器下的哪个节点。

Switch Value可以填什么?

1.什么都不填写:此时,执行第一个节点
2.填写数字:填写N,则会执行这个控制器下面的第N+1个Sampler
3.填写字符:会进行字符串全匹配

12.ForEach 控制器

这个不太好表述。大概:在“用户定义的变量”中设置一些变量,ForEach控制器,会按照设置的规则,从变量中取数据,用于其下面的节点中。下面张图来详细解释下。

1.用户定义的变量(具有a_?的规则)

2.设置ForEach 控制器中的参数。留意一下,红色框框的“a”和“用户定义的变量”的关系。

3.HTTP请求调用“输出变量名称”。如下图:

4.检查运行后的具体调用结果。如下图:

参数解释:

1.输入变量前缀:就是“用户定义的变量”中的一系列变量的前缀。

2.Start index for loop:“用户定义的变量”中变量的下划线之后的数字,此处设置为0,意思是,数字必须大于等于0。

3.End index for loop:“用户定义的变量”中变量的下划线之后的数字,此处设置为4,意思是,数字必须小于4。

4.Output variable:被这个控制器下面的Samplers使用。

5.Use Separator:勾选后,会根据“_”来匹配,就如同上面示例。如果不勾选,则直接是变量前缀和数字拼接。

不知道是否够详细

此处讲的6个逻辑控制器,不知道我讲的是否清楚。如果不清楚可以留言,或者加入下面的群,或者关注我的微信公众号“飞测”,里面有更多精彩内容。
后面还有5个控制器,会1次讲完。感谢你的关注。

4、《Jmeter基础篇》 从此善用逻辑控制器(2)相关推荐

  1. 3、《Jmeter基础篇》 从此善用逻辑控制器(1)

    故事背景 在2.<Jmeter基础篇> Thread Group(线程组)到底怎么用中,解释线程组时,提到,"控制器"和"HTTP请求"(采集器)必 ...

  2. 【Jmeter基础篇】03:如何进行post接口压力测试

    目前网络上有很多很多Jmeter的压力测试使用指南,但是在实际使用过程中,很多朋友会遇到许多并不处于理想状态的情况,比如某些参数不知道应该往哪里放,具体怎么分析测试结果等等. 所谓压力测试,实质就是让 ...

  3. Jmeter基础篇(12):用户自定义变量

    使用场景 当我们需要对较多接口分别传入不同参数的时候,可以将参数放在统一的组件内进行管理. 添加元件 在线程组或HTTP请求中(作用范围),"添加->配置元件->用户定义的变量& ...

  4. Jmeter 入门 从0-1 基础篇-实操

    Jmeter 入门 从0-1 基础篇 笔记有的图片链接可能失效了,等我修改好了在来编辑哈 文章目录 1 JMeter 1.1 JMeter环境搭建和基本使用 1.1.1 JMeter环境搭建 1.1. ...

  5. 每天15分钟JMeter入门篇(二):使用JMeter实现并发测试

    每天15分钟JMeter入门篇(一):Hello JMeter 每天15分钟JMeter入门篇(二):使用JMeter实现并发测试 每天15分钟JMeter入门篇(三):认识JMeter的逻辑控制器 ...

  6. jmeter基础逻辑控制器之if控制器

    jmeter中存在很多逻辑控制器,类似于代码中的if条件控制,for循环等,接下来我们来简单介绍下jmeter中的if条件控制器. 接下来我们以获取主题列表接口作为示例: 然后将这个接口中的limit ...

  7. 鸟哥的Linux私房菜(基础篇)- 第八章、Linux 磁盘与文件系统管理

    第八章.Linux磁盘与文件系统管理 最近升级日期:2009/08/30 系统管理员很重要的任务之一就是管理好自己的磁盘文件系统,每个分割槽不可太大也不能太小,太大会造成磁盘容量的浪费,太小则会产生文 ...

  8. [内核编程] 内核环境及其特殊性,驱动编程基础篇

    [内核编程] 内核环境及其特殊性,驱动编程基础篇  在学习汉江独钓一书后,打算总结一下内核编程应该注意的事项,以及有关的一些基础知识.第一次接触内核编程,还真是很生疏,很多东西不能一下马上消化.这里做 ...

  9. JMeter基础之组件的作用域与执行顺序

    对于新手来说,jmeter的元件是还是不少的,如果我们按照每一个元件的每一个参数的含义去学习,无疑会降低性能测试学习的热情,算我们熟悉了所有元件以及元件上的参数了,我们也不知道如何将其组合成我们想要描 ...

最新文章

  1. JAVA Web项目中所出现错误及解决方式合集(不断更新中)
  2. Redis初学:2(Redis的启动)
  3. php 网站内容采集器 Snoopy
  4. mysql页码_PHP+MySQL实现输入页码跳转到指定页面功能示例
  5. 支付宝支付 第五集:二维码生成工具
  6. ubuntu子系统多版本
  7. bat 指定jdk_微服务开发 bat 一键批量启动 jar(效率小技巧)
  8. 平方剩余(二次剩余)
  9. python 赋值、表达式
  10. 产品经理挑战赛,你敢来吗?
  11. CodeForces - 1350D Orac and Medians(思维)
  12. Java到LDAP教程(包括如何安装LDAP服务器/客户端)
  13. v4l2视频采集摄像头
  14. B站签约冯提莫,能否靠直播业务实现年入一百亿目标?
  15. html页面纵向自适应,页面布局之上下固定中间自适应.html
  16. 医用耗材管理系统设计思路分享来自北京博奥智源
  17. Spring MVC拦截器配置以及统一登陆校验实现
  18. java手机连点脚本_自动连点器app下载 自动连点器(屏幕点击器) for Android v1.0 安卓版 下载-脚本之家...
  19. 服务器双系统怎么安装教程视频教程,微pe双系统怎么安装教程
  20. 玲听预告 | 蚂蚁金服布局区块链的底层心法是什么?

热门文章

  1. 上期技术CTPAPI封装COM组件ctp开放平台openctp环境7_24小时x64组件python_delphi调用演示程序
  2. Ubuntu上Github下载慢的问题解决方法记录
  3. Linux服务器中22端口的作用,云服务器 22端口介绍
  4. 非科班出身MCU工程师,C语言基础重塑之路
  5. APP安全测试-数据安全性/通讯安全性/人机接口安全性
  6. Origin 如何输入太阳符号和约化普朗克常数
  7. 使用Apache POI解析excel
  8. 为什么设置了smtp并已开启,qq邮箱发邮件还是不好使
  9. 鸿蒙系统汽车中控,华为将推出车载智慧屏,搭载鸿蒙系统,支持 HiCar 系统
  10. 十进制与二进制的相互转换