【问题标题】:JMeter json path assert json or array in the responseJMeter json 路径在响应中断言 json 或数组
【发布时间】:2020-01-09 15:35:25
【问题描述】:

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

失败

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

为了成功

{
    "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,但这仅适用于失败情况

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

【问题讨论】:

    标签: performance jmeter load jsonassert


    【解决方案1】:

    你可以使用deep scan operator..,相关的JSON断言配置是这样的:

    每当您获得具有true 值的error JSON 属性时,断言将使其scope 中的相关采样器失败

    【讨论】:

    • 感谢 Dmitri T 和 Janesh Kodikara... 这有效(y)
    【解决方案2】:

    您可以使用正则表达式来验证 JSON 断言中的两个值(真或假)。

    样品测试计划可在GitHub参考

    希望这是有用的。

    【讨论】:

      猜你喜欢
      • 2014-03-27
      • 1970-01-01
      • 1970-01-01
      • 2021-02-28
      • 2017-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多