【JMeter】控制器If Controller

  • 功能 

    • 通过条件来控制子元件是否运行

  • 字段

    • Name:名称

    • Comments:注释

    • Expression:表达式输入框(必填)

      • ${va}

      • ${__groovy(vars.get("myMissiong")}

        • 不要在字符串中直接使用变量替换,

        • 使用无法更改脚本的变量,就无法缓存

        • 使用vars.get("myVar")

      • ${__jex13(${COUNT};10)}

      • 值必须是true或者false

    • use status of last sample:最后一个元件的状态,点击后会自动输入框中生成

    • Interpret Condition as Variable Expression

      • 不勾选(不建议使用)

        • if控制器内部使用javascript来计算条件,会有很大性能损失,并降低测试的可伸缩性

      • 勾选

        • 不能直接填写判断条件的表达式,需要用__jexl3函数或__groovy函数条件表达式求值计算为true或false

    • Evaluate for all Children:默认不选中,

      • 判定条件是否针对所有子节点

      • 勾选

        • 子节点每次取样器之前执行一次

        • 根据表达式结果判断是否执行该取样器

      • 不勾选

        • 只在ifcontroller执行一次表达式

        • 根据结果判断是否执行下面的脚本

  • 函数助手

    • jexl3

    • groovy

  • 常用表达式

    • ${JMeterT ead.last_sample_ok}

      • 判断上一个请求是否成功

    • ${__groovy(${__property(sucesscode,,)}==200,)}

  • 判断条件

    • == :等于

      • 如 1==1 或 ${__jexl3(1==1,)}

    • > 、< 大于 小于

      • 如 2>1,1<2,或 ${__jexl3(2>1,)}

    • >=、<= 大于等于 小于等于

      • 如 2>=1 ,或 ${__jexl3(2>=1,)}

    • !=、!不等于,非

      • 如 "y"!="n",非 则取 != 的反值

    • || 或,&& 和 多条件可用

      • 如:2<5 && 2>1,${__jexl3(2<5 && 2>1,)}

    • 字符串必须要用引号,变量都认为时字符串的形式

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值