我们在用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直接访问即可
动力节点在线课程涵盖零基础入门,高级进阶,在职提升三大主力内容,覆盖Java从入门到就业提升的全体系学习内容。全部Java视频教程免费观看,相关学习资料免费下载!对于火爆技术,每周一定时更新!如果想了解更多相关技术,可以到动力节点在线免费观看JSONPath视频教程哦!
代码小兵64503-29 11:46
代码小兵87208-06 11:36
代码小兵34507-29 13:19