Jmeter(三十三)_JsonPath表达式提取响应

Posted 飞天小子性能课堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Jmeter(三十三)_JsonPath表达式提取响应相关的知识,希望对你有一定的参考价值。

  

 

 

我们在用jmeter做接口测试的时候,有的时候会遇到一些复杂的json响应。比如多层list嵌套时的取值

  一个简单的例子:

  

  $..Name:列出所有省份

  

  $..Province[0].Name 提取Province中第一个list中的Name

  

  $..[?(@.Name==\'Beijing\')] 筛选出省份名为Beijing的所有list数据

  

  $.Province[:2].population 筛选前两条数据 

  

  注意:$.Province[:2].population 是筛选出前两条数据 ;$.Province[2].population 是排除前两条数据;$.Province[-2].population是排除后两条数据,千万别弄混了哦~

  下面列举一个复杂的例子:

  

 这是一个多层嵌套的jsonlist,需要提取所有cabinInfos列表下,patFlag=Y时的cabin,standardPrice和finallyPrice。是不是听起来就很复杂?如果按照传统的正则表达式提取,那么   很难满足这里的需求了。因此就需要用到jsonpath表达式。

$..[?(@.patFlag=="Y")].["cabin","standardPrice","finallyPrice"]

 

提供mock接口,jmeter直接访问即可: https://easy-mock.com/mock/5b88b27476b79510db917603/example/query1

关于jsonpath的其它用法,有待各位继续取研究~     

你还在为找不到可练习的接口而烦恼吗?现在加入龙渊阁,手把手教你搭建属于自己的接口测试环境!

 

点击这里进入史上最具活力的测试交流平台

 

以上是关于Jmeter(三十三)_JsonPath表达式提取响应的主要内容,如果未能解决你的问题,请参考以下文章

jmeter json提取器提取某个属性的所有值

Jmeter关联之JSON提取器

JMeter学习(二十三)关联

JMeter学习(二十三)关联

Jmeter(三十四)_Beanshell解析并提取json响应

Jmeter学习(三十三)调试工具Debug Sampler