說到Jmeter正則表達式提取器的應用,就不得不說到關聯。正則表達式
所謂關聯,就是把應用中動態變化返回的數據獲取到,把它保存爲一個參數,提供給後面須要用到的地方進行使用。數組
Jmeter中關聯是經過「添加—後置處理器—正則表達式提取器」來獲取數據,且注意正則表達式提取器附在須要獲取數據的某個採樣器之下,數據通常從「查看結果樹「的響應數據獲取。3d
1、獲取單個數據調試
舉例:獲取用戶列表的結果以下,須要將"mobilephone":"158****1763" 手機號碼取出用來進行登陸操做blog
一、在獲取用戶列表請求下面添加—後置處理器—正則表達式提取器字符串
正則表達式提取器說明:模板
Apply to:應用範圍。登錄
要檢查的響應字段:樣本數據源。變量
引用名稱:其餘地方引用時的變量名稱,我這裏寫的phone,可自定義設置。mobile
引用方法:${引用名稱}
正則表達式:數據提取器,()括號裏爲你要獲取的的值。"mobilephone":"( 至關於LR左邊界, )","leaveamount"至關於LR右邊界。而括號裏\d+爲正則表達式,用來匹配所須要獲取的數據,何謂正則表達式文章末尾會附上說明
模板:$$對應正則表達式提取器類型。-1所有,0 隨機,1第一個2第二個,以此類推,若只有一個正則通常就填寫$1$
匹配數字:正則表達式匹配數據的全部結果能夠看作一個數組,匹配數字便可看作是數組的第幾個元素。-1表示所有,0隨機,1第一個,2第二個,以此類推。若只要獲取到匹配的第一個值,則填寫1
缺省值:匹配失敗時的默認值。能夠不寫。若需用於後續邏輯判斷,可簡單寫爲 ERROR。
二、在獲取用戶列表添加的 Debug PostProcessor 爲調試所用,通常用於查看獲取的變量值。
從執行結果中,能看到獲取的值爲以下:
三、在登陸請求中,將正則表達式獲取的值進行引用。
2、獲取多個數據
舉例:在用戶列表的結果中,須要將"id":82,"mobilephone":"150****7414", 用戶id、手機號碼都取出用來進行後續登陸、投資操做
一、注意若是包含多個正則,咱們進行以下設置
其中,咱們能夠經過 Debug PostProcessor 來查看結果
從結果中,若是咱們要引用id、mobilephone的話,也就是這裏user_g一、user_g4分別指代的值。
二、注意變量值在登陸、投資請求中的引用!
附正則表達式說明:
通俗點來說正則表達式就是用來匹配字符串的公式。
好比正則表達式中\d+ 是來匹配1個或更多連續的數字。