1. 程式人生 > >jmeter(四):正則表示式提取器

jmeter(四):正則表示式提取器

使用jmeter來測試時,經常會碰到需要上下文傳輸資料的情況,如登入後生成的token,在其他頁面的操作,都需傳入這個token。這時,怎麼實現資料傳輸就是我們要考慮的問題。

jmeter提供的後置處理器,如正則表示式提取器,可以很方便的在伺服器響應後,把響應中的資料提取出來並賦值給某個引數,當我們需要用到這個資料時,只需呼叫這個引數即可。

所以在相應的取樣器下新增正則表示式

正則頁面如下:

名稱/註釋:字面意思

Apply to / 要檢查的響應欄位 :預設即可,如有特殊需求自行更改

引用名稱:自己設定,正則獲取到的值,將賦值給此欄位。下文引用時,引用此名稱即可。引用寫法為:${Token}

正則表示式:用於獲取需要的值的正則表示式。雙引號間的值將賦值給 引用名稱Token 。

                       . 表示匹配任意字串

                      + 表示匹配一次或多次

                      ? 表示匹配到第一個匹配項後即停止匹配

模板:如表示式中有多個正則表示式,則表示解析到的第幾個值賦值給Token。用$$括起來,一般一個的話,就用$1$

匹配數字:如響應資訊中有多個responseToken,則正則會把所有responseToken的值提取出來。

                   匹配數字的0代表隨機一個responseToken的值賦值給Token,而1、2、3.....則表示相應的第幾個值。

                   一般0使用較多。

                  如需所有的responseToken的值,則設定匹配數字為1,此時會把所有responseToken的值賦值給Token。Token變為一個列表,如想引用,${Token_n},n表示第n個數值

省卻值:表示正則表示式未匹配到數值時,如此處設定了值,則此值會被賦值給Token

正常引用

引用結果

正則表示式提取器使用很是方便。但是如果響應資訊是json格式的話,還有一個後置處理器獲取某欄位的值,也很是方便

JSON Path PostProcessor

簡單貼一張圖

提取規則:形如  $..欄位名稱  ,如和上面的正則表示式一樣,為了獲取responseToken的值,可寫為  $..responseToken

匹配數字:和正則表示式的匹配數字一樣,0隨機,-1所有

引用此變數的規則和正則表示式引用規則一樣