gpt4 book ai didi

json - ATLANTBH jmeter 组件 : JSON Path Assertion

转载 作者:行者123 更新时间:2023-12-04 12:42:09 26 4
gpt4 key购买 nike

我正在尝试使用 ATLANTBH jmeter JSON PATH 断言执行 JSON 断言。但是,我似乎无法编写正确的表达式来从下面发布的 JSON 提要中获取以下字段:

  • 123456789
  • 1009
  • 一些随机消息
    {"api": {"status":"Success","callsremaining":36,"version":"x.x.x.x"}
    ,"result":{"errors":{"123456789":{"code":1009,"error":"SOME RANDOM MESSAGE"}}}
    }

  • 这里有人有使用这个 JMeter 插件的经验吗?
    我知道我可以使用 regexBeanshell 进行验证,但我宁愿使用这些 JSON 路径断言。

    您可以提供的任何帮助将不胜感激。

    最佳答案

    看起来您可以使用 JSONPath 表达式(在 JSON 路径断言组件中)轻松地断言 1009SOME RANDOM MESSAGE 值,但不确定 123456789 :这不是节点值而是波特名称,并且这些组件使用的 JSONPath 实现似乎没有表达式来获取节点名称.

    假设您可以轻松地使用断言 123456789 而不是将 JSON 路径提取器(来自相同的组件集合)与 jmeter 的标准 Response_Assertion 绑定(bind)。

  • 将 2 个 JSON 路径断言作为子项添加到返回您要处理的 json 响应的采样器:

    enter image description here

    enter image description here

    表达式将是 $.result.errors..code$.result.errors..error 对应。
  • 将 JSON 路径提取器作为子项添加到同一采样器以提取完整的错误条目:

    enter image description here

    表达式:$.result.errors.
    这将提取 {"123456789":{"error":"SOME RANDOM MESSAGE","code":1009}} 并保存到指向的变量( ${errorKey} )中。
  • 在先前添加 JSON 路径提取器之后,将响应断言作为子项添加到同一采样器:

    enter image description here

    这将在 123456789 变量的值中声明键的名称( ${errorKey} )。


  • 所以最终的构造可能看起来像
    ...
    YOUR Sampler
    JSON Path Extractor
    JSON Path Assertion
    JSON Path Assertion
    Response Assertion
    ...

    关于json - ATLANTBH jmeter 组件 : JSON Path Assertion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13072497/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com