JSON提取器是最常用的一种用于关联的元器件,提取完参数后,相当于把参数以key-value的形式放到参数池,以便后面的请求使用。
注意:不能超前引用,即在定义前就进行参数化
简单JsonPath提取实战
自己mock一个简单的接口数据如下
{ "province": [ { "id": 110000, "name": "北京市" }, { "id": 120000, "name": "天津市" }, { "id": 130000, "name": "河北省" } ] }
获取所有省份名称:
$.province[*].name或$..name
获取province第二个对象的name:
$.province[1].name
获取名为河北省的对象数据:
$.province[?(@.name==‘河北省‘)]
取前2条数据的name:
$.province[:2].name
注意:
复杂JsonPath提取实战
下面是一个比较复杂的json数据
这是一个多层嵌套的json数据,现在要提取所有东方航空下的,cabinInfos列表下的patFlag=Y时的cabin,standardPrice和finallyPrice,听起来是不是很复杂?
jsonPath表达式就可以完成一个如此复杂的提取
`$.responseData[?(@.airlineName==‘东方航空‘)].cabinInfos[?(@.patFlag==‘Y‘)].["cabin","standardPrice","finallyPrice"]`
这次的案例接口数据是我用Flask框架自己mock出来的
原文:https://www.cnblogs.com/easy-test/p/12210355.html