JMeter - 如何使用响应断言作为我的 If 控制器的条件

JMeter - How to use response assertion as condition of my If controller

我有这样的结构:

在我的响应断言中,我将此 Col2

定义为 JMeter 变量

我可以通过这种方式在侦听器中或在 SMTP 采样器中定义的电子邮件正文中获取查询结果

${Col2_1} 

但我不能将它的值用作我的 IF CONTROLLER

的条件

我试过这种方法,但没有成功:

${__jexl3(${Col2_1} > 10)} 

我想我需要定义一个 JRS233 断言或 Beanshell,但我不知道如何将它从响应断言传递到此 JRS233 或 Beanshell。

如何实现?

谢谢

你基本上有两个选择:

  1. (不推荐)取消勾选Interpret Condition as Variable Expression
  2. (推荐)切换到 __groovy() function 并将您的 If Controller 条件修改为:

    ${__groovy((vars.get('Col2_1') as int) > 10 ,)}
    

varsJMeterVariables class, remaining code should be self-explanatory, if it isn't - check out Apache Groovy - Why and How You Should Use It 指南的 shorthand。