当前位置: 首页 > news >正文

使用JMeter的JSON提取器:通过递归下降查找,从接口响应中提取特定字段

在接口测试中,我们经常需要从返回的JSON数据中提取特定字段以便后续使用。JMeter提供了JSON提取器,可以帮助我们实现这一目标。本文将介绍如何使用JMeter的JSON提取器通过递归下降查找的方式从接口响应中提取特定字段,并通过示例解释JSON表达式中 ".." 的逻辑。

1. 示例接口响应结果:

{"data": [{"code": "2676e33735cf4ca1a8a6b079da24fad0","name": "报销管理"},{"code": "91b398813a39461ea8389e883dea4861","name": "财务核算"},{"code": "a1b29fc6ff86460a81959d8d06ea13dd","name": "凭证金额校验"}]
}

2. 步骤:

2.1 添加JSON提取器:

  在你的HTTP请求之后,添加一个JSON提取器。JSON提取器可以在JMeter的线程组下的HTTP请求中找到。

2.2 配置JSON提取器:

  • "变量名":输入一个变量名称(例如,提取的code将存储在这个变量中,比如 "extractedCode")。
  • "JSON路径表达式":这里我们要提取 "name" 为 "凭证金额校验" 的 "code"。我们使用JSON路径表达式来指定要提取的字段。

  JSON路径表达式如下:

$..[?(@.name=='凭证金额校验')].code

  在这个表达式中,"$.." 表示递归下降查找,而不仅限于当前层级的子元素。它可以检索所有层次的子元素,用来查找具有特定属性的所有嵌套对象。在例子中,它会匹配所有名为 "凭证金额校验" 的对象,并提取它们的 "code" 值。

2.3 使用提取的值:

  在接下来的请求或其他操作中,你可以使用${extractedCode}来引用提取出的值。

通过以上步骤,JMeter能够轻松提取JSON响应中符合条件的字段,并将其存储在指定的变量中供后续使用。

这样,我们就可以利用JMeter的JSON提取器方便地从接口响应中提取所需的字段,以支持更复杂的测试或验证场景。

http://www.lryc.cn/news/327005.html

相关文章:

  • Js全部循环方法解析
  • 高阶SQL语句(二)
  • Phoenix伪分布安装
  • Python算法100例-4.6 歌星大奖赛
  • 静态路由表学习实验
  • 客户端测试 可测性改进-学习记录
  • 机器学习和神经网络9
  • http模块—http请求练习
  • 视频号原视频下载使用方法?新人都在用
  • 用html画一个烟花特效
  • SQL-CRUD-1
  • linux 命令行下的计算器
  • Available platform plugins are: linuxfb, minimal, offscreen, vnc.
  • C++中string容器的修改操作
  • Elasticsearch:虚拟形象辅助和对话驱动的语音到 RAG 搜索
  • 测试开发工程师(QA)职业到底需要干些什么?part7:硬件测试工程师QA
  • Python基础:标准库 -- pprint (数据美化输出)
  • Visual Studio 小更新:改善变量的可见性
  • C++自主点餐系统
  • jconsole jvisualvm
  • python vtkUnstructuredGrid 转 vtkAlgorithmOutput_
  • IS-IS路由
  • 打造新质生产力,亚信科技2024年如何行稳致远?
  • 开源博客项目Blog .NET Core源码学习(12:App.Application项目结构分析)
  • AES加密解密算法
  • 计算机网络(05)
  • 6、ChatGLM3-6B 部署实践
  • python面试题(1~10)
  • 分类预测 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积神经网络-长短期记忆网络融合多头注意力机制多特征分类预测
  • SQLServer CONCAT 函数的用法