2016-09-13 41 views
0

我需要數組中的值,而不是數組括號[]。這裏是JSON響應我想一起工作:JMeter JSON路徑提取值無數組括號[]

{ 
: "@rpc":"1.0", 
: "@types": 
: [ 
: : "com.model.chart.PieChart", 
: : "com.model.chart.PieChartData" 
: ], 
: "@data": 
: { 
: : "@type":0, 
: : "chartData": 
: : [ 
: : : { 
: : : : "@type":1, 
: : : : "data":0.0, 
: : : : "name":"Yes" 
: : : }, 
: : : { 
: : : : "@type":1, 
: : : : "data":13.0, 
: : : : "name":"No" 
: : : } 
: : ], 
: : "subTitle":"Over Time Period", 
: : "dataName":"MyData", 
: : "title":"MyData Requirement" 
: } 
} 

我試圖得到公正的是數據並沒有。所以對於否,我只想得到13.0,但是我繼續使用數組括號得到[13.0]。這裏有JSONPath表達式的值,我曾嘗試:

[email protected][?(@.name=='No')].data回報13.0

[email protected][?(@.name=='No')].data[0]返回任何

[email protected][?(@.name=='No')][0].data返回任何

[email protected][0]..[?(@.name=='No')].data返回任何

我使用2.3版本Jmeter插件中的Jmeter v 3.0。任何幫助是極大的讚賞。

回答

1
  • 選項1:展望Debug Sampler給你使用data作爲參考的名字和接收[13.0]你可以得到13不帶括號的${data_1}

    JMeter JSON Path Extractor

    • 選項2:因爲JMeter的3.0你有JSON Path PostProcessor其行爲有點不同,並返回沒有方括號的數據:

    JSON Path Postprocessor

+0

謝謝德米特里!選項2像魅力一樣工作。 – joCha

1

我遇到了同樣的問題,並使用JMeter的(3.2版本)來了,我沒有得到的方括號[]。但是,請確保使用「JSON提取器」而不是「jp @ gc - JSON路徑提取器」。