JSON提取器
JSON提取器是专门用来对返回的响应结果是application/json格式的报文进行提取
响应:
jmeter JSON提取器JSON PATH语法
jmeter JSON提取器JSON PATH语法

添加路径:
jmeter JSON提取器JSON PATH语法
JSON提取器,变量应用范围,默认选择Main sample only即可
jmeter JSON提取器JSON PATH语法
变量路径的语法规则可以参考下面的:JSON PATH语法如下列表,具体语法使用规则,还需要大家多多尝试,可以在察看结果树中切换成JSON Path Tester模式进行测试。

怎么写JSON PATH,只有写出正确的JSON PATH,才能获取到我们需要的变量值,默认我们jmeter的察看结果树显示的结果是Text文本格式,这样我们就不能快速的看出变量的层级,所以需要把查看结果树的显示格式改成JSON Path Tester,该查看结果树还支持直接对结果进行调试
jmeter JSON提取器JSON PATH语法
假如想获取第一个list里面的id
jmeter JSON提取器JSON PATH语法
表达式:$…list[0].list[0].id

实际工作中,可能返回的查询结果经常会变化,这时候如果在写死数组索引的位置,比如上面给大家介绍的,写成..list[0].list[0].id..list[0].list[0].id,如果系统新增了项目,可能就会导致取的值不正确,这时候就需要用到另外一种取值方式,…list[?(@.carTypeName==“小面包”)].id,该json path可以通过一个变量定位到自己所在的数组的索引,然后在去取需要的id,比如carTypeName这个值是唯一值,就可以通过该值取到需要的值,语法如下$…然后后面跟数组名称,本文为list,然后跟[?(@.carTypeName==“小面包”)],其中carTypeName是序列中的一个唯一值,可以根据需要修改,“小面包"是carTypeName实际为什么值就填什么,最后在加”."后面跟你需要取的字段名如id,pah都行,只要在这个数组中存在

一步步调试
jmeter JSON提取器JSON PATH语法
jmeter JSON提取器JSON PATH语法

这样就算以后排序了也可得到固定的值。
jmeter JSON提取器JSON PATH语法

JSON PATH语法如下列表
jmeter JSON提取器JSON PATH语法

JSON怎么通过一个提取器提取多个变量,多个变量时则每个变量用“;”间隔开,正则表达式、匹配序列、默认值也一样,需要用“;”隔开,下面先介绍当正则表达式取固定的序列的时候,填写的规则如下图
jmeter JSON提取器JSON PATH语法

当表达式取任意序列时(匹配所有符合的值),填写规则如下图
jmeter JSON提取器JSON PATH语法

返回结果为application/json格式的都用json path取值,不用正则

正则表达式,具体语法使用规则参考https://www.runoob.com/regexp/regexp-syntax.html

参考:https://www.cnblogs.com/Jmeter-Automation/p/12730661.html

相关文章:

  • 2021-05-07
  • 2021-11-03
  • 2022-12-23
  • 2021-11-02
  • 2021-09-14
  • 2022-01-09
  • 2022-02-11
猜你喜欢
  • 2021-12-22
  • 2021-06-07
  • 2021-05-16
  • 2021-08-31
  • 2021-12-22
  • 2021-04-14
相关资源
相似解决方案