locust那些踩過的坑

安裝(windows系統(tǒng)下)

使用pip安裝,前提python版本是2.6+,我的是2.7.11,用python3的,pip方式無法安裝成功

????????????????????????????????????pip install locustio

測試:locust -h ??

如果有幫助信息出來,則是安裝成功。


基本使用

使用Pycharm,新建一個project,如果環(huán)境中安裝了多個python版本,創(chuàng)建項目時,需要選擇python2對應(yīng)的版本,否則,后面運行腳本會報找不到locust


新建項目


測試腳本

test1.py

? ??# -*- coding: utf-8 -*- ? ? ? #因為加了中文注釋,防止報語法錯誤,增加編碼方式說明

fromlocustimportHttpLocust, TaskSet, task

classUserBehavior(TaskSet):

@task(1)

defbaidu(self):#一個行為,訪問報讀首頁

self.client.get("/")#用@task() 裝飾該方法為一個任務(wù),1表示一個Locust實例被挑選執(zhí)行的權(quán)重,數(shù)值越大,執(zhí)行頻率越高。

classWebsiteUser(HttpLocust):#WebsiteUser()類用于設(shè)置性能測試

task_set = UserBehavior#task_set :指向一個定義了的用戶行為類。

min_wait =3000#min_wait :用戶執(zhí)行任務(wù)之間等待時間的下界,單位:毫秒。

max_wait =6000#max_wait :用戶執(zhí)行任務(wù)之間等待時間的上界,單位:毫秒。


執(zhí)行

進(jìn)入cmd

進(jìn)入到項目所在的目錄,執(zhí)行以下命令

????????locust -f load_test1.py --host=https://www.baidu.com

test1.py為測試腳本,https://www.baidu.com為測試的網(wǎng)站。

-f 指定性能測試腳本文件。

–host 指定被測試應(yīng)用的URL的地址,注意訪問百度使用的HTTPS協(xié)議。

啟動效果

打開瀏覽器訪問:http://127.0.0.1:8089或localhost:8089


Number of users to simulate設(shè)置模擬用戶數(shù)

Hatch rate?(users spawned/second)孵化率?不知道怎么翻譯,每秒產(chǎn)生(啟動)的用戶數(shù)。

點擊Start swarming開始運行性能測試。


分析測試結(jié)果


性能測試參數(shù)

Type: 請求的類型,例如GET/POST。

Name:請求的路徑。這里為百度首頁,即:https://www.baidu.com/

request:當(dāng)前請求的數(shù)量。

fails:當(dāng)前請求失敗的數(shù)量。

Median:中間值,單位毫秒,一半的服務(wù)器響應(yīng)時間低于該值,而另一半高于該值。

Average:平均值,單位毫秒,所有請求的平均響應(yīng)時間。

Min:請求的最小服務(wù)器響應(yīng)時間,單位毫秒。

Max:請求的最大服務(wù)器響應(yīng)時間,單位毫秒。

Content Size:單個請求的大小,單位字節(jié)。

reqs/sec:是每秒鐘請求的個數(shù)。


命令行執(zhí)行

locust-f test1.py --host=https://www.baidu.com --no-web -c 10 -r 2 -t 1m

啟動參數(shù):

–no-web 表示不使用Web界面運行測試。

-c 設(shè)置虛擬用戶數(shù)。

-r 設(shè)置每秒啟動虛擬用戶數(shù)。

-t 設(shè)置設(shè)置運行時間。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Locust是什么? Locust 是一個開源負(fù)載測試工具。使用 Python 代碼定義用戶行為,也可以仿真百萬個...
    zychen143閱讀 7,403評論 1 2
  • Locust文件就是一般的Python文件。唯一的需求就是它至少需要一個繼承于Locust的類. Locust類 ...
    Yuan_Jie閱讀 4,167評論 0 7
  • 又來到了一個老生常談的問題,應(yīng)用層軟件開發(fā)的程序員要不要了解和深入學(xué)習(xí)操作系統(tǒng)呢? 今天就這個問題開始,來談?wù)劜?..
    tangsl閱讀 4,317評論 0 23
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,533評論 19 139
  • 事務(wù)隔離級別 一、數(shù)據(jù)庫事務(wù)隔離級別數(shù)據(jù)庫事務(wù)的隔離級別有4個,由低到高依次為Read uncommitted 、...
    梁行之閱讀 1,818評論 0 0

友情鏈接更多精彩內(nèi)容