-1

我正在尝试使用 JMeter 中的 JSON 断言测试我的 API 响应,但无法找到如何实现它。API返回2个值,我需要检查这两个值之间的差异是否一致

API 响应:

{
  "start": "12759898",
  "end": "12759907"
}

在此处输入图像描述

我已经像上面那样尝试过,但它似乎是错误的,因为它是一个 JSONPath 变量。谁能指导如何评估这些价值观?有可能做到这一点吗?

4

1 回答 1

2

它看起来像是JSR223 断言的工作

  1. 添加 JSR223 断言作为返回上述 JSON 的请求的子项
  2. 将以下代码放入“脚本”区域:

    def response = new groovy.json.JsonSlurper().parse(prev.getResponseData())
    def start = response.start as long
    def end = response.end as long
    def delta = end - start
    
    if (delta != 10) {
        AssertionResult.setFailure(true)
        AssertionResult.setFailureMessage('Expected: 10, got: ' + delta)
    }
    

    如果和之间的差startend等于10- 请求将被标记为失败。

    在此处输入图像描述

更多信息:

于 2019-02-27T12:40:35.507 回答