Jmeter之正則表達式取樣器~案例詳解

正則:按照規則提取數據正則表達式

場景:A請求得到的響應數據,須要做爲B請求的提交數據(eg:A:購物車頁面→B:下單(正則提取購物車的商品信息,數量信息等))spa

經常使用正則表達式:(.+?)3d

輔助:添加Debug Sampler,進行調試調試

 1.添加「正則表達式取樣器」

 

2.經常使用的數據設置

●引用名稱:變量名,給提取到的參數一個變量名blog

●正則表達式:(.+?) 括起來的部分就是要提取的。括號裏面的就是正則匹配的規則io

●模板:$1$取第一個正則表達式的值模板

●匹配數字:0表明隨機,1表明第一個數據,2表示第二個....以此類推(正則提取後,可能有多個數據)變量

●缺省值:默認值,沒有提取到數據就給個默認值,能夠自定義。引用

以上描述可能比較難理解和實踐,看下案例分析,迅速瞭解haha~bug

案例

請求得到的數據以下圖,並對auther,link進行提取

 

→案例分析1

下圖中正則表達式填寫的是:"author":"(.+?)"

表示在整個響應數據中,提取author做者信息,()括起來的部分就是要提取的。括號裏面的就是正則匹配的規則

只有一個正則表達式,因此模板爲$1$,

提取匹配到的第一個做者,因此匹配數字爲1,

當沒有得到數據時,給變量賦值:author=error,

Debug Sampler中顯示,成功提取數據並賦值:author=陳奕迅

 須要提取匹配到的第二個做者時,匹配數字爲2

 

案例分析2

下圖中正則表達式填寫的是:"author":"(.+?)","link":"(.+?)"   ——  多個正則用英文逗號隔開

有兩個正則表達式,採用$2$後,author取第二個正則匹配到的數據

採用$1$$2$後,author取兩個正則匹配到的全部數據

 

 附:正則提取規則

相關文章
相關標籤/搜索