JMeter(十)-正則表達式關聯


jmeter中,接口自動化的關鍵在於參數關聯。比如需要登錄的接口,如何調用登錄口令?一個增刪改查的閉環,如何將接口參數上下傳遞?下面就以實際的例子來仔細說一說

1:登錄接口

這里有一個實際的登錄接口,在響應中返回了一串token,如下圖

那么我們在接下來的接口-經驗庫列表中,就必須帶入這一串token,否則響應報錯,如下圖所示   

 

 

如何獲取登錄的口令呢?這里詳細說明一下,如圖所示   

在接下來的接口中可以將獲取的token作為變量調用,變量名為${center-token},如下圖

 

觀察請求頭,發現傳入了一串token,並且響應結果正確

 

 

 自此,一個完整的登錄關聯就結束了。后續接口直接調用該token就可以。我們接下來繼續說其它的參數關聯

比如一個增刪改查流程,想要做自動化檢驗就必須形成一個閉環,那么刪除-修改-查看就必須調用同一個必填參數,例如唯一性的id。下面還是實例演示   測試開發交流群 317765580

我先新增一個經驗庫,可以看到結果中返回了一個id,我在后續接口中都必須調用此唯一性的id

接下來寫一個正則將其取出,注意與之前token正則的不同之處

后續接口可以調用此參數,並正確響應

  

好了,一個完整的登錄-查看-刪除的流程到這里就可以結束了

 

 

正則表達式提取器說明

 

引用名稱:定義一個變量,供后續請求引用

一般(.+?)(.*?)能夠滿足我們80%的使用場景。所以,一般的正則表達式都可以寫成下面這2

左邊界(.+?)右邊界

左邊界(.*?)右邊界

left對應匹配目標的起始字符

right對應匹配目標的結束字符

正則表達式:利用正則將需要的數據提取出來

()     括起來的部分就是需要提取的,對於你要提的內容需要用小括號括起來

.    點號表示匹配任何字符串

+   一次或多次

  在找到第一個匹配項后停止

模板:用$$引用起來,如果在正則表達式中有多個正則表達式(多個括號括起來),則可以是$N$等,表示提取第N個括號里面的

匹配數字  -1表示取所有返回值,此時提取結果是一個數組,其余正整數代表第幾個匹配的內容提取出來。如果匹配數字選擇的是-1后續還可以通過${XXX_1}的方式來取第1個匹配的內容,${XXX_2}來取第2個匹配的內容。

匹配數字1:表示取第一個返回值

匹配數字0:表示隨機取一個返回值

缺省值:正則匹配失敗時取的值

1:提取第一個Name

 

 

2:提取全部Name

 

 

3:表達式同時提取Namepopulation,並傳出兩個參數

 

 

例4:條件判斷取值

提取population=800的城市

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM