if逻辑控制器

假设我们在创建脚本的时候,有个场景是期望根据不同的服务器 ip 去压测不同环境的接口,如我们需要即测试 test环境,又测 online环境,只需要通过逻辑控制器去判断不同环境的区域即可。

首先我们创建一个if循环控制器,点击「添加」–> 「逻辑控制器」–> 「如果(if)控制器」

这里我们在if控制器中,写入条件表达式 ${__jexl3("${host}" == "localhost")}

  1. if控制器的表达式为 ${__jexl3(判断条件)}。 这里我们有一点需要注意的时,假设我们判断的数据,他是一个字符串形式的话,那么他的表达式我们都需要给他加上双引号。
  2. 如上方图中,我们判断 请求的 host 是否是本地,则判断条件为"${host}" == "localhost" ,我们可以看到,"${host}"是加了双引号的。
  3. 如果我们判断的条件是数字,如 ${__jexl3(${num} == 0)},是数字条件的话,则不需要加双引号

上面我们已经创建了表达式,并且 host就是本地的,我们来看看是否会运行。
可以看到在查看结果树中,所有的接口都正常执行了。


那我现在我们来改一下条件表达式,我们判断当 host 不是本地的时候,则去执行下面的脚本。


运行之后,我们可以看到,程序并没有执行脚本。

仅一次控制器

首先我们来创建一个仅一次控制器,点击「添加」–> 「逻辑控制器」–> 「仅一次控制器」


这个控制器,使用最常见的场景是登录,我们通常都是希望一个用户他只会登录一次。下面我们来看看设置一个线程,循环两次的结果。


我们在查看聚合报告中可以看到,其他的结果多运行了两次,登录的结果,只运行了一次。

这里需要注意的是,仅一次控制器,是根据线程数的数量来执行的,假设我们还是以登录接口为例,但是我们线程组设置为2个,并且循环两次,实际上登录的接口就会执行2次,我们来实战演示一下。



上方的图中,我们可以看到,登录接口执行了2次,其他的接口都执行了4次。

foreach控制器

foreach控制器,可以遍历某个数组中的所有数据,这里类似我们代码中的for循环。

首先,我们在创建循环控制器之前,需要先从用户列表中将所有的手机号码提取出来,提取出来之后,数据会以数组的形式展示。关于Json提取器中不理解的可以看我这篇博客。链接: https://blog.csdn.net/weixin_43865008/article/details/118371620.

我们在调试取样器中,可以看到已经提取出10组数据

下面我们来创建一个 foreach控制器, 点击「添加」–> 「逻辑控制器」–> 「foreach控制器」


  • 输入变量前缀:这里我们是从 Json提取器中,提取出的变量参数
  • 开始循环字段(不包含):这里我们从0开始,可以看到上方调试取样器中,数据是从第一个开始的,这里写着不包含,那么我们从0开始,否则写1的话,第一组数据会遍历不到
  • 结束循环字段(包含):这里同理,我们有10组数据,设置10,则包含第十条数据
  • 输出变量名称:顾名思义,我们可以自定义一个输入变量名
  • 数组之前加上下划线:默认勾选,如下图,我们看到PhoneNumList_1有个下划线,勾选之后,则变量中不需要在写这个下划线了。

设置成功之后,我们来看一下聚合报告,这里用户列表的接口执行了一次,用户认证执行了10次。

JMeter循环控制器的使用相关推荐

  1. jmeter循环控制器和CSV数据文件设置搭配使用

    目录 1.执行前准备 2.执行顺序 ​ 1.执行前准备 需求是:有一个变量,变量有3个值需要循环执行一下,看看结果: 添加线程组 添加http请求 添加循环控制器 添加CSV数据文件设置 添加调试器( ...

  2. jmeter 循环控制器、计数器的使用

    连接数据库后,添加"Debug PostProcessor",执行后查看数据返回结果 数据库中的数据: 添加"循环控制器",数据实际有10条,循环次数可以填写& ...

  3. jmeter使用if控制器_Jmeter(七)_if控制器+循环控制器+计数器控制接口分支

    最近查阅了一下网上关于if控制器的文章,大同小异,几乎找不到原创,于是决定自己写一篇 下午测试接口,遇到了一个审核的流程.逻辑很简单,就是审核不通过之后返回去继续修改再提交,然后再审核,直到通过为止. ...

  4. jmeter持续时间循环控制器_不写代码实现条件循环?只用Jmeter就能实现

    Jmeter是常用的接口测试工具,可以方便地对各种接口进行测试.有时,我们可能需要在一次测试流程中对某个接口进行若干次请求,以达成一定目的.这时,我们无需在脚本中重复添加类似的请求,可以利用Jmete ...

  5. 21天Jmeter打卡Day12 逻辑控制器之循环控制器

    21天Jmeter打卡Day12 逻辑控制器之循环控制器 https://www.jianshu.com/p/53335b2ff9be 添加循环控制器,设置循环次数为2 这样设置,就是执行四次 注意循 ...

  6. Jmeter中线程组对Sampler和对循环控制器的作用

    从Badboy录制完成的Jmeter脚本,导入Jmeter后,都会有一个默认的循环控制器: 此时循环控制器作用于下面的Sampler.此时我们设置Thread Group的场景如下: 此时我们运行,查 ...

  7. jmeter逻辑控制器之while循环控制器(一)

    jmeter逻辑控制器之while循环控制器(一) while循环控制器 微信公众号为:测试demo分享 示例一 示例2 while循环控制器 微信公众号为:测试demo分享 关注微信公众号,了解更多 ...

  8. JMeter应用-循环控制器、计数器的配合使用

    使用场景:今天有了一个构造测试数据的需要,要用Jmeter来写一个脚本,自动创建一个商户,以及在商户下创建多个站点. 重点在与怎样快速创建多个站点,且各个站点名称类似于站点01.站点02,名称不能重复 ...

  9. jmeter常用逻辑控制器(事务控制器,循环控制器)

    jmeter很强大,誓要干倒postman 一,事务控制器 1.1 打开方式: 鼠标右键)线程组--->(鼠标悬停)添加--->(鼠标悬停)逻辑控制器--->(左键点击)事务控制器. ...

最新文章

  1. sql语句语法多表关联_SQL Delete语句-如何删除行或表,语法示例
  2. Selenium Webdriver——操作隐藏的元素(三)switchTo().frame()
  3. TCP/IP / 网关 IP 和 DNS 服务器 IP 为什么可以一样?
  4. 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
  5. mysql数据库check命令_利用mysqlcheck命令快速修复mysql数据库
  6. 怎么隐藏滚动条又能滚动
  7. 求正整数N(N1)的质因数的个数,相同的质因数需要重复计算(java)
  8. VLFeat-----mean sift开源库【配置】【转载】
  9. Redis数据结构04-SortedSet
  10. Spring Boot Mybatis 搞反向工程,太方便咯。。
  11. 7个和尚_一位高僧对世俗问题的7个回答,非常绝妙!
  12. 分享谷歌SEO的32个实用关键词拓展工具
  13. 世界读书日 | 技术人不要错过的好书(IT前沿技术)
  14. python 获取邮箱验证码
  15. java动态生成pdf 合并两个pdf文件功能三
  16. 一个有趣的模型组合预测模型
  17. hdu 5312 打表加特判
  18. 教你一招搞定 Homebrew 下载加速!
  19. vids:xvid解码器_解码CSS位置:Paul O'Brien的大师班
  20. 统计信号处理基础 习题解答1-3

热门文章

  1. ajax请求时设置cookie,如何在JavaScript中使用AJAX请求设置Cookie值?
  2. [BJOI2019]奥术神杖——AC自动机+DP+分数规划+二分答案
  3. docker启动容器失败解决
  4. 7月31日科技联播:AI助手智商测评Siri进步最大,无人驾驶打车服务已在美国试行...
  5. 搭建 Vue + Vite 入门项目
  6. 2022年游戏:今年所有新的和即将到来的游戏
  7. Docker 环境准备好这些,工作就完成了一半
  8. linux自定义安装docker版本
  9. c语言 getopt函数,C - getopt函数
  10. SQL注入检测模块开源项目DRUID-SQL-WALL学习小结