有没有办法在jmeter的结果树中测试jsr223断言(例如我们可以在结果树中测试正则表达式)

时间:2017-03-02 09:49:16

标签: jmeter assertion jsr223

当前我在jmeter中使用jsr223断言进行API的功能测试。所以我需要在结果树中测试我对响应消息的断言,这样我们就不需要每次都运行这个调用。 (例如,我们可以在结果树中测试正则表达式)。 那么有没有办法针对响应消息测试jsr223断言。

2 个答案:

答案 0 :(得分:0)

prev.getResponseMessage() - 提供HTTP响应消息

prev.getResponseDataAsString() - 以字符串形式给出完整的回复。

JSR223 Assertion

中尝试以下操作
log.info(prev.getResponseMessage());
String response = prev.getResponseMessage();
if(response.contains("OK")){
    AssertionResult.setFailure(true);
    AssertionResult.setFailureMessage("response message contains OK");
}

您可以访问JSR223 Assertion中的以下内容:

  1. Response - 使用prevSampleResult
  2. AssertionResult - 您可以根据某些条件调整断言结果。

答案 1 :(得分:0)

根据当前的JMeter版本(3.1),这是不可能的,但是存在变通方法。

您可以使用Dummy Sampler来模拟测试数据,这样您就不必重新运行整个场景以验证单个断言。

JMeter Dummy Sampler

您可以通过JMeter Plugins Manager安装Dummy Sampler(以及任何其他JMeter插件)

[JMeter Plugins Manager - Dummy Sampler