Jmeter接口測試--獲取登錄token
場景:Jmeter中每個線程組之間是獨立的,數據不通用,有些接口需要登錄后,才能進行下一步操作,這時候就需要在每個線程組中傳遞登錄后的token信息,要不就需要在每個線程組里添加一次登錄操作
1、添加一個setup線程組,我們把登錄放在這個線程組里,在登錄請求下添加正則表達式提取器
2、配置參數
說明:
(1)引用名稱:下一個請求要引用的參數名稱,如填寫token,則可用${token}引用它。
(2)正則表達式:
():括起來的部分就是要提取的。
.:匹配任何字符串。
+:一次或多次。
?:在找到第一個匹配項后停止。
(3)模板:用$$引用起來,如果在正則表達式中有多個正則表達式,則可以是$2$$3$等等,表示解析到的第幾個值給title。如:$1$表示解析到的第1個值
(4)匹配數字:0代表隨機取值,1代表全部取值,通常情況下填0
(5)缺省值:如果參數沒有取得到值,那默認給一個值讓它取
3、添加BeanShell 取樣器,將token值設為全局變量
4、在每個線程組里添加HTTP信息頭管理器,把獲取的token添加到HTTP信息頭管理器里
5、運行線程組,查看結果
說明:使用Jmeter里的函數助手 找到__setProperty,__property這兩個函數,點擊幫助查看用法說明。 選項>>>函數助手對話框
第二種方法是使用后置處理器里的json插件。這個插件是需要安裝的,需要下載一個jar包--jmeter-plugins-manager-1.3.jar,把它放在apache-jmeter-5.1.1\lib\ext 這個目錄下,然后來安裝插件,如圖:
用法很簡單,如圖是接口返回的數據
json插件設置如圖
可以寫成data.token 或者 data["token"] 這兩種方式都行。