咱們知道Jmeter能夠用命令去運行腳本,叫作非GUI模式。而Locust一樣也有非GUI模式,不過叫作no-web模式運行,windows系統下也是dos下執行命令。python
locust參數選項: -h, --help 幫助信息 -H HOST, --host=HOST 指定被測試的主機,以下格式: http://10.21.32.33 --web-host=WEB_HOST 指定運行 Locust Web 頁面的主機. Defaults to '' (all interfaces) -P PORT, --port=PORT, --web-port=PORT 指定 –web-host 的端口,默認是8089 -f LOCUSTFILE, --locustfile=LOCUSTFILE 指定運行 Locust 性能測試文件,如 '../other.py'. 默認: locustfile --csv=CSVFILEBASE, --csv-base-name=CSVFILEBASE 以CSV格式存儲當前請求測試數據.csv文件存放當前目錄 --master 將locast設置爲以該進程爲主進程的分佈式模式運行 --slave 將locast設置爲以分佈式模式運行,並將此進程做爲從屬進程 --master-host=MASTER_HOST 用於分佈式負載測試的ocast master的主機或IP地址。僅在與一塊兒運行時使用 --slave. Defaults to 127.0.0.1. --master-port=MASTER_PORT 要鏈接到該端口的端口由用於分佈式負載測試的ocast master使用。僅在運行時使用--slave。默認值爲5557。請注意,從服務器還將鏈接到此端口+1上的主節點。 --master-bind-host=MASTER_BIND_HOST locust主機應綁定到的接口(主機名、IP)。僅在與--master一塊兒運行時使用。默認爲*(全部可用接口)。 --master-bind-port=MASTER_BIND_PORT locust主機指定端口。僅在與--master一塊兒運行時使用。默認值爲5557。請注意,locast還將使用這個端口+1,所以在默認狀況下,主節點將綁定到5557和5558。 --heartbeat-liveness=HEARTBEAT_LIVENESS set number of seconds before failed heartbeat from slave --heartbeat-interval=HEARTBEAT_INTERVAL set number of seconds delay between slave heartbeats to master --expect-slaves=EXPECT_SLAVES 在開始測試以前,須要鏈接多少個從屬主機(僅 --no-web 使用). --no-web 禁用Web界面,而後當即開始運行測試。要求指定-c和-r. -c NUM_CLIENTS, --clients=NUM_CLIENTS 併發用戶數. Only used togetherwith --no-web -r HATCH_RATE, --hatch-rate=HATCH_RATE 每秒生成用戶的速率. 和--no-web一塊兒使用 -t RUN_TIME, --run-time=RUN_TIME 在指定時間後中止, 如 (300s,20m, 3h, 1h30m, etc.). 和--no-web一塊兒使用 -L LOGLEVEL, --loglevel=LOGLEVEL 日誌等級(DEBUG/INFO/WARNING/ERROR/CRITICAL.默認INFO.) --logfile=LOGFILE 日誌文件的路徑。若是未設置,日誌將轉到stdout/stderr --print-stats 在控制檯中打印統計信息 --only-summary 只打印摘要統計信息 --no-reset-stats [DEPRECATED] Do not reset statistics once hatching has been completed. This is now the default behavior. See --reset-stats to disable --reset-stats Reset statistics once hatching has been completed. Should be set on both master and slaves when running in distributed mode -l, --list 顯示可能的locust類列表並退出 --show-task-ratio 打印locust類任務執行率表 print table of the locust classes' task execution ratio --show-task-ratio-json 打印locust類任務執行率的JSON數據 -V, --version locust版本
在沒有Web UI的狀況下運行locust - 能夠打開cmd 經過使用--no-web參數,web
先cd到腳本當前目錄,而後執行指令:json
locust -f locust_batch_data.py --no-web -c 1 -r 1
備註:這裏的腳本用的是上篇文章講的,這裏就再也不重複了。windows
若是要指定測試的運行時間,可使用--run-time安全
locust -f locust_batch_data.py --no-web -c 1 -r 1 --run-time 10
或使用-t參數服務器
locust -f locust_batch_data.py --no-web -c 1 -r 1 -t 10
運行時間單位,若是不寫單位默認是s,也能夠指定小時h,分鐘m,能夠參考如下時間格式併發
您可能但願經過CSV文件保存的Locus結果。在這種狀況下,有兩種方法能夠作到這一點。分佈式
首先,使用Web UI運行Locust時,您能夠在「下載數據」選項卡下點擊下載CSV文件。性能
若是是界面的話,就以下圖所示:學習
也能夠可使用命令行志--no-web模式運行Locust,加上--csv=example參數保存前面兩個CSV文件。
–csv=example:example爲CSV文件名的前綴;能夠自行命名,如:result_csv
locust -f locust_batch_data.py --no-web --csv=example -c 1 -r 1 -t 10
使用--csv=example會自動保存兩個文件到當前腳本目錄example_distribution.csv、example_stats.csv:
將example_stats.csv打開效果展現:
Locust帶有基本的日誌記錄配置,能夠選擇採用–loglevel和/或–logfile修改配置。若是要控制日誌記錄配置,則能夠提供該–skip-log-setup標誌,該標誌將忽略其餘參數。
參數說明:
--skip-log-setup:禁用日誌記錄設置。可是能夠由python提供日誌功能;
locust -f locust_batch_data.py --no-web --csv=example -c 1 -r 1 -t 10 --skip-log-setup
--loglevel:設置日誌的級別;能夠設置爲 DEBUG/INFO/WARNING/ERROR/CRITICAL。默認的爲info級別;簡寫爲 -L
--logfile:日誌文件的路徑,若是不設置,則顯示在命令提示界面:
打開locust.log文件,查看:
locust非GUI模式運行已經講完,對軟件測試,自動化測試,測試開發及安全測試感興趣的小夥伴,能夠入羣一塊兒學習和討論。