Jmeter-逻辑控制器介绍2

1:如果(if)控制器

1.1:准备数据

1.1.1:如下图 准备两组http取样器 并且分别添加上Debug取样器


1.1.2:执行后我们发现第一组http取样器执行成功 Debug Sampler1的响应数据中JMeterThread.last_sample_ok=true

第二组http取样器执行失败Debug Sampler2的响应数据中JMeterThread.last_sample_ok=false



1.2:添加【如果(if)控制器】 先禁用 第二个http取样器和其他的Debug Sampler

条件:相当于Java if()中的条件 只要是true就会继续执行 如果条件判断false就不会执行


1.3:查看结果树 我们发现【如何(if)控制器】下的Debug sampler执行了


1.4:禁用第一个http sampler并启用第二个http sampler 执行。查看结果树发现【如果(if)控制器】下的Debug取样器没有执行。


2:While控制器

2.1:Condition参数的几种写法

2.1.1:什么都不写(会一直循环执行 知道执行到有fail跳出循环)


例1:失败的sampler在前面 成功的sampler在后面 这种情况会一直执行死循环


例2:成功的sampler在前面 失败的sampler在后面 执行到fail会跳出循环



2.1.2:Condition写LAST也会执行跟2.1.1一样的结果


2.1.3:Condition的另外几种写法

  • ${VAR} - where VAR is set to false by some other test element

     判断VAR的值什么时候为false的时候跳出循环

如下例子:

A:添加CSV文件如下



B:设置条件 


C:查看结果树


  • ${__javaScript(${C}==10)}

例:

A:运行函数助手 统计运行次数 记录在myValue这个变量中


B:添加条件为运行次数小于3


C:添加HTTP取样器 在这一步将运行次数的值赋值给myValue  下一步可以直接取myValue的值即可


D:查看结果树发现只循环运行3次就退出了


  • ${__javaScript("${VAR2}"=="abcd")}
  • ${_P(property)} - where property is set to "false" somewhere else


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值