1. 程式人生 > >JMeter使用JSON Extractor外掛實現將一個介面的JSON返回值作為下一個介面的入參

JMeter使用JSON Extractor外掛實現將一個介面的JSON返回值作為下一個介面的入參

##補充##

介面響應資料,一般為JSON,HTML格式的資料。

對於HTML的響應結果提取,可以使用正則表示式,也可以通過XPath來提取;對於JSON格式的資料,可以用正則表示式,JSON Extractor外掛,BeanShell來提取JSON響應結果。

 

比如:想要獲取響應中的 robotCallJobId 作為下一個介面的入參,可以使用JMeter的JSON提取器(JSON Extractor),提取該值,引數化該入參

 

操作步驟如下:

1.安裝JMeter外掛管理器(Plugins Manager)

下載地址:https://jmeter-plugins.org/install/Install/ 

 直接下載 plugins-manager.jar,然後把jar包放到JMeter的安裝路徑下:/apache-jmeter-3.2/lib/ext,重啟JMeter,進入JMeter的GUI頁面,會發現多了一個外掛管理器的標誌,點選開啟選擇要用的外掛(JSON Extractor)安裝

 

 在Available Plugins中選擇需要安裝的外掛(JSON/YAML Path Extractor),安裝了的外掛可以在 Installed Plugins中檢視

 

 

2.使用JSON/YAML Path Extractor 提取響應JSON中的某一具體值

 在需要提取響應資料的HTTP請求下面,新增一個 jp@gc - JSON/YAML Path Extractor  ,新增路徑為:HTTP請求-》新增-》後置處理器-》 jp@gc - JSON/YAML Path Extractor

 

根據JSON格式,提取想要的資料

##解釋##

1》.Destination Variable Name:指變數名稱,就是你要提取的那個資料的key值

2》.JSONPath Expression:指要獲取資料的JSON層級,層級一定要書寫正確,否則會提取失敗,同時陣列類的級別,需要指定下標

3》.Default Value:預設值,當會有獲取資料時,傳入的值

 

3. 在介面中,使用提取的資料作為入參

3.1在Body Data中,使用${變數名稱},如 ${robotCallJobId}傳參

3.2在Parameters中使用${變數名稱},如${robotCallJobId} 當成value值傳參

這樣就實現了,將上一個介面的JSON響應資料獲取,作為下一個介面的入參