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所有
引用此變數的規則和正則表示式引用規則一樣