performance - JMeter json路径断言响应中的json或数组

标签 performance jmeter load jsonassert

我正在使用 Jmeter 进行 api 测试,并对响应正文使用 json 路径断言。问题是响应正文给出了基于成功和失败的两条响应路径。

for failure

{
    "response": {
        "error_message": "Invalid input data.",
        "error_code": "Invalid_input",
        "error": true
    }
}

for success

{
    "response": [
        {
            "attachment_name": "num1.png",
            "attachment_id": 2547,
            "error": false
        },
        {
            "attachment_name": "num2.png",
            "attachment_id": 2548,
            "error": false
        },
        {
            "attachment_name": "num3.png",
            "attachment_id": 2549,
            "error": false
        }
    ]
}

这里添加对“错误”路径和值的断言,但路径会根据结果发生变化。 添加了 $.response.error 但这仅适用于失败情况

enter image description here

请帮助我在这两种条件下获得正确的路径和断言。谢谢。

最佳答案

您可以使用deep scan operator ..,相关的 JSON 断言配置将类似于:

enter image description here

每当您收到值为 trueerror JSON 属性时,断言都会使 scope 中的相关采样器失败。

关于performance - JMeter json路径断言响应中的json或数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59667395/

相关文章:

jmeter - JMeter Webdriver 采样器中的等待时间问题

Angular AppComponent 在子组件之后加载

javascript - 如何等待来自 ajax() 成功数据的图像加载?

linux - 运行 `perf stat` 时 `time` (和 `perf trace -s`!)是否显示不正确的结果?

javascript - 在 React 组件中存储多个引用 vs 通过 ID 查询 DOM

使用 Jmeter 进行性能负载测试以及 Assets 文件如何影响结果

http - JMeter 连接超时和重试

javascript - 检查浏览器是否支持 iFrame 上的 load 方法

Python 与 perl 排序性能

c# - WPF 是 100 倍或比普通 Windows 窗体慢的东西是正常的吗?