jmeter的json提取器詳解(json Extractor)


官方解釋

 

 

我的理解

其實學過代碼的都知道,就是變量賦值,然后引用而已,而jmter一般稱為json提取器,LR簡稱為關聯。

舉個例子:

新增用戶,刪除用戶,這要求刪除新增必須為同一個用戶,那么需要怎么做呢?

我的大概理解如下:

步驟1)新增用戶,返回結果中有ID

步驟2)從新增用戶返回結果中提取ID信息,並賦值給一個對象(變量)

步驟3)刪除用戶中引用這個變量即可

 

 

下面是實戰例子,新增刪除體驗碼:

設已弄好新增刪除體驗碼請求,那么接下來的步驟只需要:

1、 在新增體驗碼請求中,添加json提取器。

添加方法為:xx請求-后置處理器-json extractor

 

 

2、 在新增體驗碼中的json提取器定義一個變量,提取返回結果。然后在下一個請求(刪除體驗碼)中引用這個變量

新增體驗碼返回結果圖

json提取器詳解圖

 

 

 

3、下一個請求(刪除體驗碼)中,引用這個變量信息

 

 

4、成功了,看下一個請求(刪除體驗碼)返回信息,每次刪除的code都是不一樣的

 

 

 

注意事項

 

1、如果返回結果的有多個嵌套,怎么辦?

 

比如要提取下圖中的violationcode的參數1345,要怎么做呢?首先,了解返回的結構,這個是一個字典里嵌套了一個列表,然后列表里再嵌套了一個字典。那么我們的json path expression就應該設置為$.result[0].violationCode

 

詳解:其實,也沒多難。代碼中怎么取,就怎么取,學過代碼就知道很簡單了。

 

外面是一層字典,先取result,根據key(result)values

 

然后是一層列表,我們取第一個,就是0

 

然后是一層字典,再根據keyvalues即可,即violationcode取參數1345

 

(可以百度一些json在線解析,校驗一下,更容易明白)

 

 

 

 

 

 

2、關於返回中有特殊字符,注意要轉為ASCII碼再使用

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM