【问题标题】:JMeter Pass, fail, Warning?JMeter 通过、失败、警告?
【发布时间】:2025-12-31 07:15:11
【问题描述】:

所以我在 Jmeter 上运行了一些测试,我为通过/失败设置了断言。问题是,我需要设置“警告”或“警告”结果。

例如——

Latency < 500ms = Pass
Latency > 1000ms = Fail 
Latency < 999ms AND Latency > 501 = Caution

以上只是一个例子。A 和 B 之间的差异会小得多。

有人知道如何在 Jmeter 中设置类似的东西吗?

【问题讨论】:

    标签: testing jmeter performance-testing


    【解决方案1】:

    目前JMeter不支持caution结果,采样器可能成功也可能不成功。您可以设置自定义响应状态代码、消息、向 jmeter.log 打印一些内容、发送电子邮件等,但是如果没有核心 JMeter 更改,除了 Success: true|false 之外,您什么也得不到。

    您可以尝试使用JSR223 Assertion 来实现您的通过/失败标准逻辑,将采样器响应代码设置为999 并将消息设置为CAUTION 的相关代码将类似于:

    def latency = prev.getLatency() as int
    def range = new IntRange(501, 999)
    
    if (latency >= 1000) {
        AssertionResult.setFailure(true)
        AssertionResult.setFailureMessage('Latency exceeds 1000 (was ' + latency + ')')
    }
    
    if (range.contains(latency)){   
        prev.setResponseCode('599')
        prev.setResponseMessage('CAUTION! High latency: ' + latency)
    }
    

    如果延迟介于 501999 之间(含),您将获得下一个结果:

    失败看起来“正常”

    更多信息:

    【讨论】:

    • 谢谢,我相信这暂时能满足我的需要。
    最近更新 更多