使用 JSR223 断言比较 JMeter 中的两个值

Comparing two values in JMeter with JSR223 Assertion

我有以下场景:

HTTP 请求采样器 - 正则表达式提取器 - JSR223 断言

Regex Extractor 为响应抓取标签。我需要比较数组中的元素总数小于20k

以下是 运行 测试的实际情况: URLCOUNT_matchNr=29471 鉴于该数字,测试应该会失败。

这是我的 JSR223 断言中的代码(选择 Java 作为语言):

String var2 = vars.get("URLCOUNT_matchNr");
Integer result = Integer.valueOf(var2);
if (result > 20000){
    Failure = true;
    log.info(result);
}

即使满足 if 条件,测试也不会失败。我究竟做错了什么?也不例外。

您的代码适用于具有 Failure 可用变量的 Beanshell 断言

但对于 JSR223 assertion 只需使用以下行:

 AssertionResult.setFailure(true);

If an error is detected, the script should use AssertionResult.setFailureMessage("message") and AssertionResult.setFailure(true).