jmeter正則表示式
jmeter正則表示式呢?不知道的小夥伴來看看小編今天的分享吧!
1、jmeter正則表示式簡介:
在jmeter中,可以利用正則表示式提取器完成某個操作,獲得某個值或資料資訊,然後進行下一步的操作。
2、舉例:
在預設的測試計劃中新增一個執行緒組,然後新增取樣器,以JDBC請求做例子;
右鍵新增後置處理器、正則表示式提取器;
3、補充說明:
後置處理器:在請求結束或者返回響應結果時發揮作用。
正則表示式提取器:允許使用者從伺服器的響應中通過使用perl的正則表示式提取值。該元素會作用在指定範圍取樣器,用正則表示式提取所需值,生成模板字串,並將結果儲存到給定的變數名中。
APPly to:作用範圍(返回內容的斷言範圍)
Main sample and sub-samples:作用於父節點的取樣器及對應子節點的取樣器
Main sample only:僅作用於父節點的取樣器
Sub-samples only:僅作用於子節點的取樣器
JMeter Variable:作用於jmeter變數(輸入框內可輸入jmeter的變數名稱)
要檢查的響應欄位:需要檢查的響應報文的範圍
主體:響應報文的主體
Body(unescaped):主體,響應的主體內容且替換了所有的html轉義符,注意html轉義符處理時不考慮上下文,因此可能有不正確的轉換,不太建議使用
Body as a Document:從不同型別的檔案中提取文字,注意這個選項比較影響效能
Response Headers:響應資訊頭
Request Headers:請求資訊頭
URL:統一資源定位符,即Internet上用來描述資訊資源的字串
Response Code:響應狀態碼,比如200、404等
Response Message:響應資訊
PS:jmeter的中文翻譯有時候不太準確,建議儘量選擇語言格式為英文(為了方便說明,這裡選擇中文語言,當然,自己明白最好,不用糾結這個)
引用名稱(Reference Name):Jmeter變數的名稱,儲存提取的結果;即下個請求需要引用的值、欄位、變數名(例子中我提取的是SOCIAL_NO)
引用方法:引用方法:${引用名稱}
正則表示式(Regular Expression):使用正則表示式解析響應結果,“()”表示提取字串中的部分值,請不要使用“||”,除非你本身需要匹配這個字元。
4、正則表示式操作符:
模板(Template):從匹配的結果中建立一個字串,這是通過正則表示式匹配出來的一組值,意為使用提取到的第幾個值(可能有多個值匹配,因此使用模板);從1開始匹配,以此類推.
引數可以在取值模板組合使用,例如:“11-22”作為模板得到的值是使用“-”連線的第一個待匹配內容與第二個待匹配內容組合而成的字串。
匹配數字(Match No):正則表示式匹配資料的結果可以看做一個數組,表示如何取值:0代表隨機取值,正數n則表示取第n個值(比如1代表取第一個值),負數則表示提取所有符合條件的值。
預設值:匹配失敗時候的預設值;通常用於後續的邏輯判斷,一般通常為特定含義的英文大寫組合,比如:ERROR
最後,根據上面的說明,完成配置,然後可以先新增一個監視器(檢視結果樹),檢查是否取到了對應的值;
提取到的引數,呼叫時用${SOCIAL_NO_1},${SOCIAL_NO_2}...,如果想要得到匹配出的引數的個數,用${SOCIAL_NO_matchNr},如果想隨機選取一個,只需要將
匹配數字設為0,使用${SOCIAL_NO}呼叫即可。
以上就是小編今天的分享了,希望可以幫助到大家。