所以基本上我正在尝试使用jmeter来剖析json有效载荷。我想查看有效负载,确定一个值是否等于某个值,如果该值是正确的,则确定该“模块”中的另一个值是否正确。以下示例:
{
"status": "success",
"data": {
"foo": [
{
"ID": 570,
"valueX": 1,
"blah1": 1,
"ValueY": 10,
"blah2": "10"
},
{
"ID": 570,
"valueX": 2,
"blah1": 1,
"ValueY": 0,
"blah2": "0"
}]
}}
因此,如果我想确定是否valueX = 2
,并验证valueY = 0
,我将如何进行此操作?我熟悉使用json路径$.data.foo[0].valueY
,但在这个例子中,API以不同的顺序返回值。因此valueX
可能是1或2,具体取决于ID
。
任何建议或指示将不胜感激。
答案 0 :(得分:0)
对于JsonPath,你可以使用类似的东西:
$.data.foo..[?(@.valueX==2)].ValueY
它的作用:
$.data.foo..
返回foo
[?(@.valueX==2)]
过滤那些valueX
为2 .ValueY
为同一元素返回ValueY。至于如何做到这一点,还有很多方法。这里有#34;没有多余的装饰"之一: