由于最近項(xiàng)目原因,對(duì)Jmeter的使用需要更進(jìn)一步捷雕。在Jmeter學(xué)習(xí)筆記--簡(jiǎn)單性能測(cè)試使用過(guò)程(1)中展鸡,只是簡(jiǎn)單的使用Jmeter進(jìn)行多條接口測(cè)試蝴簇,與postman一條一條接口測(cè)試相比,更加的節(jié)省時(shí)間矛渴,提高測(cè)試效率时迫。而近期的項(xiàng)目需要通過(guò)測(cè)試的接口參數(shù)依賴其他接口的返回?cái)?shù)據(jù)進(jìn)行聯(lián)動(dòng)測(cè)試颅停,也就是通過(guò)登錄接口中的token進(jìn)行之后接口的測(cè)試工作。
第一步大家應(yīng)該都知道别垮,首先根據(jù)開(kāi)發(fā)給的API文檔便监,在Jmeter上將需要的接口寫上,由于接口過(guò)多碳想,為了方便之后路徑更改方便烧董,添加HTTP請(qǐng)求默認(rèn)值。
步驟為:添加--配置元件--HTTP請(qǐng)求默認(rèn)值
由于該項(xiàng)目中需要多用戶數(shù)據(jù)龙填,所以需要導(dǎo)入大量數(shù)據(jù)胳泉,然鵝不能一條一條輸入數(shù)據(jù),即達(dá)不到目的也會(huì)特別的繁瑣岩遗,因此我們需要導(dǎo)入數(shù)據(jù)文檔扇商。
首先準(zhǔn)備好數(shù)據(jù)文檔,放在自己可以找到的位置宿礁,在Jmeter中創(chuàng)建一個(gè)csv數(shù)據(jù)文件設(shè)置案铺。
步驟為:添加--配置元件--csv數(shù)據(jù)文件設(shè)置
創(chuàng)建csv數(shù)據(jù)文件設(shè)置完成后,我們就需要把我們?cè)斓臄?shù)據(jù)導(dǎo)入進(jìn)來(lái)梆靖,文件名內(nèi)輸入文件路徑控汉,變量名稱輸入在接口中設(shè)置的變量參數(shù)名稱笔诵,這里我造了一些手機(jī)數(shù)據(jù),接口的參數(shù)名稱為mobile姑子,所以我將變量名稱輸入為"mobile".其他配置根據(jù)項(xiàng)目以及文檔要求進(jìn)行配置乎婿,就不再做贅述。
當(dāng)然街佑,僅僅配置好csv數(shù)據(jù)文件設(shè)置谢翎,在運(yùn)行過(guò)程中依舊不能導(dǎo)入我們所需要的數(shù)據(jù),我們還需要將我們的數(shù)據(jù)賦予我們的參數(shù)值中舆乔。
在線程組中創(chuàng)建用戶參數(shù)變量岳服。
線程組右鍵添加--前置處理器--用戶參數(shù)
創(chuàng)建完成后,設(shè)置用戶參數(shù)希俩,參數(shù)下名稱輸入為接口數(shù)據(jù)中需要參數(shù)變量的參數(shù)名,這里我的接口中參數(shù)為mobile;由于我的csv數(shù)據(jù)文件內(nèi)為mobile,所以用戶_1輸入內(nèi)容為${mobile}纲辽。
如需要輸入多行參數(shù)變量颜武,點(diǎn)擊“添加變量”按鈕,再根據(jù)自己的需求輸入即可拖吼。
這里我在用戶登錄接口中需要配置mobile手機(jī)號(hào)的值鳞上,由于api文檔要求數(shù)據(jù)為json格式,且方法為post吊档,所以這里用的是json格式增加參數(shù)數(shù)據(jù)篙议,key值為“mobile”,value值為“{mobile}就是csv數(shù)據(jù)文件設(shè)置中的變量名稱mobile。
配置完成后怠硼,嘗試運(yùn)行會(huì)發(fā)現(xiàn)用戶登錄成功后的token值已經(jīng)生成鬼贱,但是下一個(gè)接口中卻無(wú)法使用該token值。
所以需要獲取用戶登錄接口返回?cái)?shù)據(jù)中的token值香璃,并使需要的接口能夠獲取到該token值这难,這時(shí)候就需要用到正則表達(dá)式提取器。
在登錄接口下添加--后置處理器--正則表達(dá)式提取器葡秒。
創(chuàng)建完成后姻乓,設(shè)置token,正則表達(dá)式輸入"token":"(.+?)"
缺省值為默認(rèn)值眯牧,不輸入則為空蹋岩,我這里輸入了 tokenerror
設(shè)置完成后,需要將token設(shè)為全局變量学少,這樣后面的接口就可以直接獲取token,而不用再次設(shè)置獲取token剪个,或者出現(xiàn)token無(wú)法獲取的狀況。
添加--后置處理器--BeanShell處理器
之后在腳本中輸入{token},)}
設(shè)置完成后旱易,需要設(shè)置HTTP信息頭禁偎,將抓取全局變量token值放入token中
在測(cè)試計(jì)劃--添加--配置元件--HTTP信息頭管理器
創(chuàng)建完成后腿堤,設(shè)置token值為${_property(newtoken)}
設(shè)置完成后記得修改接口數(shù)據(jù),根據(jù)需求運(yùn)行即可如暖。