接口、任務(wù)集、locust用戶(hù)類(lèi)))
安裝命令行安裝pip install locustlocust安裝依賴(lài)其他庫(kù)如有這方面的問(wèn)題需要先安裝需要依賴(lài)的庫(kù)pycharm安裝file-》settings-》project Interpreter-》輸入名稱(chēng)【locustio】進(jìn)行搜索—選擇特定版本包—在線(xiàn)自動(dòng)安裝腳本步驟本案例所有代碼都在一個(gè)py文件中定義任務(wù)定義所有需要測(cè)試的接口如登陸同request庫(kù)比較著學(xué)習(xí)代碼如下#函數(shù)定義、接口請(qǐng)求方法、路徑、請(qǐng)求數(shù)據(jù)deflogin(l):l.client.post(/authentication/account,data{username:13426251982,password:120012})deflogin01(l):l.client.post(/authentication/form,data{username:1060351195147440129:13426251982,password:120012,remember-me:true})defhomeCount(l):l.client.get(/customers/homeCount,data{reporterId:2036428750557466626,projectId:})defprojectOption(l):l.client.get(/projects/options,data{tenantId:1060351195147440129,teamId:,allProjects:1})deflogout(l):l.client.get(/authentication/logout,data{tenantId:1060351195147440129})定義任務(wù)集任務(wù)集類(lèi)包括開(kāi)始、結(jié)束函數(shù)以及tasks任務(wù)請(qǐng)求比例設(shè)置fromlocustimportTaskSet,HttpUser,task#定義任務(wù)集classchannelTest(TaskSet):#發(fā)送HTTP請(qǐng)求數(shù)的比例3:1名稱(chēng)為任務(wù)方法名tasks{homeCount:3,projectOption:1}defon_start(self):#類(lèi)似setuplogin(self)login01(self)defon_stop(self):logout(self)定義locust類(lèi)定義locust類(lèi)關(guān)聯(lián)任務(wù)集以及請(qǐng)求發(fā)送間隔設(shè)置和權(quán)重、host設(shè)置等#定義locust類(lèi)classTest(HttpUser):tasks[channelTest]#任務(wù)集名稱(chēng)min_wait1000max_wait1500hosthttps://。。。weight10運(yùn)行命令在python控制臺(tái)輸入命令執(zhí)行l(wèi)ocust測(cè)試后瀏覽器查看報(bào)告瀏覽器輸入localhost:port,端口號(hào)控制會(huì)有填寫(xiě)對(duì)應(yīng)的虛擬用戶(hù)數(shù)、用戶(hù)的啟動(dòng)速度然后點(diǎn)擊開(kāi)始測(cè)試測(cè)試報(bào)告如下