免费A级毛片无码专区网站-成人国产精品视频一区二区-啊 日出水了 用力乖乖在线-国产黑色丝袜在线观看下-天天操美女夜夜操美女-日韩网站在线观看中文字幕-AV高清hd片XXX国产-亚洲av中文字字幕乱码综合-搬开女人下面使劲插视频

JMETER與它的組件們

JSON提取器與Debug Sampler我們平時(shí)會(huì)遇到很多JSON格式的接口返回 , 我們需要提取參數(shù)可以用JSON提取器 , 同時(shí)配合自帶的調(diào)試器來(lái)進(jìn)行調(diào)試 。

JMETER與它的組件們

文章插圖
 JSON提取器
Name of created variables:提取的值存放的變量名稱JSON Path expression:表達(dá)式 , 就是剛在在結(jié)果樹中驗(yàn)證的表達(dá)式 , 可以同時(shí)使用多個(gè)表達(dá)式 , 用分號(hào)隔開Match No:0 隨機(jī) 1第一個(gè) -1所有Compute concatenation var:如果匹配所有時(shí) , 就將所有值存入變量名_ALL 中Default Value:提取不到值時(shí)默認(rèn)值我們使用Dummy sampler來(lái)mock一個(gè)返回(這里不會(huì)可以上一篇)
{"topic":"mock_api","data":{"errormes":"","response":[{"name":"A","age":18},{"name":"B","age":30}]}}現(xiàn)在我們來(lái)提取age這個(gè)字段 , 這里會(huì)分享不同的方法來(lái)取值
第一種:一層一層從上至下取age=18這個(gè)值
//每一層就是一個(gè)"." , 因?yàn)閞esponse是個(gè)列表 , 我們?nèi)ニ饕秊?$.data.response[0].age第二種:有條件的篩選name=A的age , 使用表達(dá)式:[?(@.key == value)]
//$..直接去找response字段 , 根據(jù)表達(dá)式去找name是A的age$..response[?(@.name=="A")].age第三種:直接根據(jù)表達(dá)式找 , 并且可以一次性提取多層多變量
// Result[0]={"name":"A","age":18}$..[?(@.name=="A")].["age","name"]// Result[0]=18$..[?(@.name=="A")].age效果展示
JMETER與它的組件們

文章插圖

JMETER與它的組件們

文章插圖
計(jì)數(shù)器
JMETER與它的組件們

文章插圖
然后我們?cè)O(shè)置不同的線程和循環(huán)次數(shù)來(lái)看看效果
設(shè)置線程1 , 循環(huán)3
JMETER與它的組件們

文章插圖
設(shè)置線程2 , 循環(huán)3
JMETER與它的組件們

文章插圖
設(shè)置線程2 , 循環(huán)3 , 勾選上方計(jì)數(shù)器中的與每用戶獨(dú)立的跟蹤計(jì)數(shù)器
JMETER與它的組件們

文章插圖
設(shè)置線程2 , 循環(huán)3 , 勾選上方計(jì)數(shù)器中的與每用戶獨(dú)立的跟蹤計(jì)數(shù)器 和 在每個(gè)線程組迭代上重置計(jì)數(shù)器
JMETER與它的組件們

文章插圖
while邏輯控制器、循環(huán)控制器、if邏輯控制器和測(cè)試活動(dòng)這兩個(gè)我們放在一起 , 假設(shè)我們需要去判斷循環(huán)的次數(shù)大于5就自動(dòng)跳出循環(huán)
while控制器
JMETER與它的組件們

文章插圖
填入 ${__jexl3("${num}" != "5",)}
JMETER與它的組件們

文章插圖
循環(huán)五次后退出 , 這里需要注意的是while條件中一般只會(huì)使用javaScript或者jexl3(這兩個(gè)都是在函數(shù)助手中查看 , 輔助編寫)
循環(huán)控制器+if控制器
JMETER與它的組件們

文章插圖
勾選上永遠(yuǎn) , 這樣就會(huì)一直循環(huán)(這里勾選上只要是為了和上面while控制器模擬同一個(gè)場(chǎng)景 , 一般不會(huì)勾選永遠(yuǎn) , 下面在做if判斷 , 這樣太麻煩了)
我們?cè)趂or循環(huán)下面增加if控制器去判斷是否滿足我們需要的條件 , if下面增加一個(gè)動(dòng)作控制器 , 如果滿足if條件就Break , 跳出循環(huán)
if條件填入 ${__jexl3("${num}" == "5",)}

經(jīng)驗(yàn)總結(jié)擴(kuò)展閱讀