Jmeter-關聯設定
和斷言、集合點、思考時間、引數化與lr功能基本相同外,jmeter的關聯功能也是有的,在一定功能需求方面,jmeter還是該有的都有啦,只是功能微弱一些。
關聯的方法:
方法一,從前一個請求中取,用正則表示式提取器。
具體方法,在需要獲得資料的請求上右擊新增一個後置處理器-->正則表示式提取器
引用名稱即下一個請求要引用的引數名稱,如填寫title,則可用${title}引用它。
正則表示式中()括起來的部分就是要提取的。.代表任意字元,*代表出現任意次。
模板,用$$引用起來,如果在正則表示式中有多個正則表示式(多個括號括起來的東東),則可以是$2$,$3$等等,表示解析到的第幾個值給title。
匹配數字,0代表隨機,-1代表所有,其餘正整數代表將在檢查的內容中,第幾個匹配的內容提取出來。
方法二,用xpath從前一個請求中取。這種形式比較適合於返回為xml片段的情況。
在需要獲得資料的請求上右擊新增一個後置處理器-->xPath Extractor。
引用名稱即下一個請求要引用的引數名稱,如填寫body,則可用${body}引用它。
XPath query,即xpath的表示式,要符合xpath的語法。
<input id="am1" class="am" type="text" onfocus="this.blur();" readonly="readonly" value="城西分店" tag=
別用-1
負數表示取所有值,是以陣列方式存放
呼叫需要用陣列方式呼叫。
0表示隨機
1表示第一個匹配的
2表示第二個匹配的
依次類推
引用名稱即使用的引數名;填入正則表示式;模板選取匹配的組;匹配數字為匹配的個數,負數表示全部匹配;預設值為沒有匹配到時的取值。
Jmeter中的關聯用函式_regexFunction實現,函式字串可以通過“函式助手對話方塊”生成。
1、正則表示式:s0.id="(.*)";如果response中有類似s0.id="_fks_JV8Uodp1O7nE9VFbRgYT5w==
2、引數的組別:如果前面的正則表示式取了不止一個引數(如 s0.id="(.*)";s0.ip="(.*)";),那麼這裡需要制定引數的組別,如果該引數為 $1$,則表示取得第一個值(id),$2$表示取得第二個值(ip)。
3、第幾個引數:組別設定好以後,還有一個問題,如果response中有兩個地方都能夠匹配s0.id="(.*)";s0.ip="(.*)";這個字串,那麼這裡可以選擇取第幾次匹配,選擇1表示第一次匹配,依次類推。還可以選擇All,表示選擇所有匹配,這個不大用到,具體可以看jmeter的幫助。
4、當3步驟的引數選擇ALL時用到,不再詳述。
5、預設值:如果response中沒有匹配值,就使用該預設值。
6、看不懂