??很久沒有使用 JMeter 了,今天再看一下耘眨,發(fā)現(xiàn)了新的用法昼榛,很好用,能提高工作效率剔难,在這里分享一下胆屿。
??如上圖所示,我們有時候需要在一個線程組內(nèi)同時進(jìn)行多個 HTTP 請求(比如 HTTP 請求1偶宫、HTTP 請求2非迹、HTTP 請求3),在這些請求中有一些共同的參數(shù)纯趋,比如“服務(wù)器名稱”憎兽、“端口號”、“HTTP 請求方法”结闸、“路徑”等等唇兑。如上圖我們有三個請求,如果輸入三次完全相同的參數(shù)桦锄,會顯得很繁瑣,既然都一樣蔫耽,那么我們可不可以只寫一次结耀,三次請求共用這些參數(shù)呢?其實是可以的匙铡。
??我們可以使用【配置元件】中的【HTTP 請求默認(rèn)值】图甜,將這些相同的參數(shù)全都寫在“HTTP 請求默認(rèn)值”里,這樣在其作用域下的 HTTP 請求都會使用默認(rèn)的 HTTP 請求鳖眼。如果需要修改黑毅,我們也只需要修改這一處就可以了。
??那么钦讳,問題來了矿瘦。這樣寫枕面,就要求我們所有的請求都是一樣的,萬一有一個請求不一樣呢缚去,比如“請求方法”不同潮秘,或者“路徑”不同等等。而我們又想一次請求易结,怎么辦呢枕荞?
??對于多個相同點中的“另類”我們需要特殊對待。比如說搞动,上圖中的“HTTP 請求3”中的“路徑”和其他兩個不同躏精,那么我們就在“HTTP 請求3”的路徑中輸入該請求正確的路徑就可以了。
這里我們要思考一個問題鹦肿?
問:什么時候“HTTP 請求默認(rèn)值”的參數(shù)有效矗烛,什么時候請求本身自己的參數(shù)生效呢?
答:當(dāng)請求沒有輸入請求參數(shù)時狮惜,默認(rèn)值生效高诺;當(dāng)請求輸入了自己的參數(shù)值,那么此時不在使用默認(rèn)值碾篡,而使用請求參數(shù)自己的值虱而。
通俗點說就是“當(dāng)我自己沒有的時候我用默認(rèn)值,當(dāng)我有的時候我就用我自己的值”开泽。
下面我們介紹另一個超實用的配置元件:用戶定義的變量牡拇。
??很多請求中我們都需要傳入相應(yīng)的參數(shù)(parameters),比如上圖所示的三個 HTTP 請求,我們都需要傳入?yún)?shù)分別為:{key,value1}穆律、{key,value2}惠呼、{key,value3}。如果我們有10個或者更多個請求峦耘,我們需要對每一個請求的參數(shù)進(jìn)行輸入剔蹋,如果后期需要修改,我們又需要對每一個進(jìn)行修改辅髓,不僅繁瑣泣崩,還有可能會遺漏或者出現(xiàn)錯誤。
如果我們能夠把這些變量都在一個頁面進(jìn)行統(tǒng)一的管理洛口,是不是就會方便了很多呢矫付?
??就比如上圖,我們把3個 HTTP 請求的參數(shù)都定義在配置文件【用戶定義的變量】中第焰,一目了然买优。“HTTP 請求1”使用的是第一個參數(shù){key1,value1}、“HTTP 請求2”使用的是第二個參數(shù){key2,value2}......
如果請求想要修改參數(shù)值杀赢,那么我們可以直接在該配置文件修改即可烘跺?
??我們在這里定義了這些參數(shù)變量,那么葵陵,這些請求如何調(diào)用呢液荸?
調(diào)用參數(shù)值,也很方便脱篙,只要使用符號${變量名}
即可在需要的地方調(diào)用該參數(shù)值娇钱。
如果我們需要修改請求的參數(shù)值,就可以直接在【用戶定義的變量】這個配置元件中統(tǒng)一修改绊困。