2
我運行的JMeter的請求,響應看起來是這樣的:過程jsonpath後處理結果
{
"Items":[
{
"Available":3,
"Info":[
{
"Sample1":1,
"Sample2":33,
"Sample3":50,
"Sample4":"asd",
"Sample5":88,
"Sample6":null,
"Sample7":null,
"Sample8":null,
"Sample9":35,
"Sample0":35
}
]
}
]
}
我的目標是要經過項目的列表(我的樣本中只有一個,但可以有更多),如果'可用'大於0,則將'Info'中的一些值保存到變量中,以便將它們用於下一個請求。
我現在的解決方案是,我加了JSON路徑後處理器在那裏我分隔值是這樣的:
$.Items[?(@.Available > 0)].Info[0].Sample1[0];
$.Items[?(@.Available > 0)].Info[0].Sample2[0];
$.Items[?(@.Available > 0)].Info[0].Sample3[0]...
,但顯然這不是一個非常漂亮的解決方案,我也認爲這將花費太多資源,如果我必須做很多次。
所以我的問題是它在某種程度上可以將
$.Items[?(@.Available > 0)].Info[0]
元素分開,然後再處理它得到我需要的領域?
是否想使用單個JSON PATH提取器讀取所有「Sample *」值? –
@Naveen不,只是其中的一部分。 – user7177532
@Naveen對不起,我沒有注意到你的問題中的'single'這個詞,對於我來說,使用多少個JSON路徑表達式來獲取值並不重要,我只是不想調用'is available大於0'檢查每個表達式,如果可能的話。 – user7177532