首页 > 解决方案 > 如何使用 jmeter 从 json 断言中识别特定的真或假值?

问题描述

要求是我们必须识别“元素”,然后检查它的真假。

{
    "first": {
        "second": [
            {
                "element": 1,
                "elementrec": null,
                "enabled": true,
                "rec": null
            },
            {
               "element": 2,
                "elementrec": null,
                "enabled": false,
                "rec": null
            },
            {
                "element": 3,
                "elementrec": [
                    "3"
                ],
                "enabled": true,
                "rec": [
                    "3"
                ]
            }
        }
      ]
    } 
}

以上3个元素有真有假。想使用不同的 json 断言来识别所有 3 个元素的真假。

标签: jsonjmeterresponseextractor

解决方案


我不知道你所说的“识别”是什么意思,有太多可能的选择,所以我会想出最短的一个:

  1. 添加JSR223 PostProcessor作为返回上述 JSON 的请求的子项

  2. 将以下代码放入“脚本”区域

    new groovy.json.JsonSlurper().parse(prev.getResponseData()).first.second.each { item ->
        log.info('Element: ' + item.element + ', enabled: ' + item.enabled)
    }
    
  3. 运行你的测试

  4. jmeter.log文件中,您将看到具有“启用”状态的“元素”

演示:

在此处输入图像描述

更多信息:


推荐阅读