Jmeter使用介面傳遞資料過程圖解
一。
1.提取響應結果中的“mobile_phone”,作為下一個登入介面的賬號資訊
1)在當前介面下,新增-置處理器-正則表示式提取器
2)正則表示式處理器
說明:
後置處理器:在請求結束或者返回響應結果時發揮作用
- APPly to:作用範圍(返回內容的斷言範圍)
- Main sample and sub-samples:作用於父節點的取樣器及對應子節點的取樣器
- Main sample only:僅作用於父節點的取樣器
- Sub-samples only:僅作用於子節點的取樣器
- JMeter Variable:作用於jmeter變數(輸入框內可輸入jmeter的變數名稱)
要檢查的響應欄位:需要檢查的響應報文的範圍
主體:響應報文的主體,一個網頁頁面的內容,除了資訊頭以外的內容
- Body(unescaped):主體,響應的主體內容且替換了所有的html轉義符,注意html轉義符處理時不考慮上下文,因此可能有不正確的轉換,不太建議使用
- BodyasaDocument:從不同型別的檔案中提取文字,注意這個選項比較影響效能
- Response Headers:響應資訊頭
- Request Headers:請求資訊頭
- URL:統一資源定位符,即Internet上用來描述資訊資源的字串
- Response Code:響應狀態碼,比如200、404等
- Response Message:響應資訊
引用名稱(ReferenceName):Jmeter變數的名稱,儲存提取的結果;即下個請求需要引用的值、欄位、變數名(例子中我提取的是SOCIAL_NO)
引用方法:引用方法:${引用名稱}
正則表示式(RegularExpression):使用正則表示式解析響應結果,“()”表示提取字串中的部分值,請不要使用“||”,除非你本身需要匹配這個字元。
下面是常用的正則表示式操作符:
():括起來的部分就是要提取的。
.:匹配任何字串。+:一次或多次。?:不要太貪婪,在找到第一個匹配項後停止。
模板(Template):模板,用來從匹配的結果中建立一個字串,這是通過正則表示式匹配出來的一組值,語法為:$1$指代第一組,$2$指代第二組,$0$指代整個匹配結果
匹配數字(MatchNo):匹配數字,指明哪一個匹配結果值將被使用,正則表示式一般會有多個匹配結果。使用:0,表示Jmeter任選一個匹配值,使用:正整數N,表示Jmeter選擇第N個值進行匹配,使用負數表示選取所有的值,一般與ForEach控制器配合使用
預設值:如果正則表示式沒有匹配到資料,引用變數將會返回一個預設值,在除錯中此功能很有用,如果沒有設定預設值,那麼很難分辨出正則表示式是否有匹配到資料或使用是否正確,當然你也可以根據你的測試需求,在除錯完成後去掉預設值的設定
提取到的引數,呼叫時用${SOCIAL_NO_1},${SOCIAL_NO_2}...,如果想要得到匹配出的引數的個數,用${SOCIAL_NO_matchNr},如果想隨機選取一個,只需要將
匹配數字設為0,使用${SOCIAL_NO}呼叫即可。
正則表示式提取賬號資訊如下圖:
檢視正則表示式提取結果,執行緒組-新增-Sampler-Debug Sampler
不需要做變動
新增檢視結果樹(此處省略),進行註冊請求並檢視Debug Sampler結果
新增登入介面,並進行引用mobile_phone
執行測試指令碼,在察看結果樹中 檢視到已經登入(登入code為:0):
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。