1

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

4

2 回答 2

1

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

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

JMeter 虚拟采样器

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

[JMeter 插件管理器 - 虚拟采样器

于 2017-03-02T15:34:51.693 回答
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. 响应- 使用prevSampleResult
  2. AssertionResult - 您可以根据某些条件调整断言结果。
于 2017-03-02T12:57:46.353 回答