locust分布式和命令行参数

locust 分布式

运行多个进程的Locust, 使用 --master 命令启动主进程, 使用 --worker 启动从属进程

主进程控制从进程并收集从进程的测试结果;从进程负责执行测试,并反馈结果给主进程。

启动无界面主进程

locust -f locustfile.py --master --headless --master-bind-host=127.0.0.1 --master-bind-port=8090 -t 15s -u 5 -r 1
  • --master 指明当前为主进程
  • --master-bind-host=[ip 地址] 指明主进程绑定的地址
  • --master-bind-port=[端口号] 指明主进程的绑定的端口号

启动后,如果当前没有从进程的话会显示等待从进程。当从进程启动后便可以执行脚本了。

启动无界面的从进程:

locust -f locustfile.py --worker --master-host=127.0.0.1 --master-port=8090 --headless
  • --worker 指明当前为从进程
  • --master-host=[ip 地址] 指明需要连接的主进程的 ip 地址
  • --master-port=[端口号] 指明需要连接的主进程的端口

从进程启动后将开始执行测试,主进程将会统计结果。

运行参数

命令行 环境 配置文件 描述说明
-f, --locustfile LOCUST_LOCUSTFILE locustfile 要导入的Python模块文件,例如'../other.py'。默认值:locustfile
-H, --host LOCUST_HOST host 负载测试主机地址:https://www.baidu.com
-u, --users LOCUST_USERS users 并发用户数。主要与–headless一起使用。可以在测试期间通过输入w,W(生成1,10个用户)和s,S(停止1,10个用户)来更改
-r, --spawn-rate LOCUST_SPAWN_RATE spawn-rate 产生用户的每秒速率。主要与–headless一起使用
--hatch-rate LOCUST_HATCH_RATE hatch-rate 启动虚拟用户的速率
-t, --run-time LOCUST_RUN_TIME run-time 在指定的时间段后停止,例如(300s,20m,3h,1h30m等)。仅与–headless一起使用。默认为永久运行。
--web-host LOCUST_WEB_HOST web-host 将Web界面绑定到的主机。默认为“ *”(所有接口)
--web-port, -P LOCUST_WEB_PORT web-port web ui端口地址,默认为8089
--headless LOCUST_HEADLESS headless 禁用Web界面,而是立即开始负载测试。需要指定-u和-t。true/false
--autostart LOCUST_AUTOSTART autostart 立即开始测试(不禁用 Web UI)。使用 -u 和 -t 控制用户数和运行时间
--autoquit LOCUST_AUTOQUIT autoquit 在运行完成 X 秒后完全退出 Locust。仅与 –autostart 一起使用。默认设置是保持 Locust 运行,直到您使用 CTRL+C 将其关闭
--headful LOCUST_HEADFUL headful
--web-auth LOCUST_WEB_AUTH web-auth 打开Web界面的基本身份验证。应该以以下格式提供:username:password
--tls-cert LOCUST_TLS_CERT tls-cert 用于通过HTTPS服务的TLS证书的可选路径
--tls-key LOCUST_TLS_KEY tls-key 用于通过HTTPS服务的TLS私钥的可选路径
--master LOCUST_MODE_MASTER master 分布式模式下运行:true/false
--master-bind-host LOCUST_MASTER_BIND_HOST master-bind-host master应绑定的接口(主机名,ip)。仅在与–master一起运行时使用。默认为*(所有可用接口)。
--master-bind-port LOCUST_MASTER_BIND_PORT master-bind-port master应该绑定的端口。仅在与–master一起运行时使用。默认为5557
--expect-workers LOCUST_EXPECT_WORKERS expect-workers 预期分布式客户端数量,当分布式客户端与master建立数达到设定数后开始自动执行,必须配合headless=true时生效
--expect-workers-max-wait LOCUST_EXPECT_WORKERS_MAX_WAIT expect-workers-max-wait master在放弃之前等待worker连接的最长时间。默认为永远等待
--worker LOCUST_MODE_WORKER worker 分布式模式运行客户端
--master-host LOCUST_MASTER_NODE_HOST master-host 用于分布式负载测试的蝗虫主服务器的主机或IP地址。仅在与–worker一起运行时使用。默认为127.0.0.1。
--master-port LOCUST_MASTER_NODE_PORT master-port 蝗虫主服务器使用与之连接的端口进行分布式负载测试。仅在与–worker一起运行时使用。默认为5557
-T, --tags LOCUST_TAGS tags 测试中要包含的标签列表,因此仅执行具有任何匹配标签的任务
-E, --exclude-tags LOCUST_EXCLUDE_TAGS exclude-tags 要从测试中排除的标签列表,因此仅执行没有匹配标签的任务
--csv LOCUST_CSV csv 将当前请求统计信息以CSV格式存储到文件中。设置此选项将生成三个文件:[CSV_PREFIX] _stats.csv,[CSV_PREFIX] _stats_history.csv和[CSV_PREFIX] _failures.csv
--csv-full-history LOCUST_CSV_FULL_HISTORY csv-full-history 将每个统计信息条目以CSV格式存储到_stats_history.csv文件中。您还必须指定“ –csv”参数以启用此功能。
--print-stats LOCUST_PRINT_STATS print-stats 在控制台中打印统计信息
--only-summary LOCUST_ONLY_SUMMARY only-summary 仅打印摘要统计信息
--reset-stats LOCUST_RESET_STATS reset-stats 完成后重置统计信息。在分布式模式下运行时,应同时在master和worker上设置
--html LOCUST_HTML html 存储HTML报告文件
--skip-log-setup LOCUST_SKIP_LOG_SETUP skip-log-setup 禁用日志记录设置。而是由Locust测试或Python默认设置提供配置。
--loglevel, -L LOCUST_LOGLEVEL loglevel 在DEBUG / INFO / WARNING / ERROR / CRITICAL之间进行选择。默认值为INFO。
--logfile LOCUST_LOGFILE logfile 日志文件的路径。如果未设置,日志将转到stdout / stderr
--exit-code-on-error LOCUST_EXIT_CODE_ON_ERROR exit-code-on-error 设置流程退出代码以在测试结果包含任何故障或错误时使用
-s, --stop-timeout LOCUST_STOP_TIMEOUT stop-timeout 退出之前等待模拟用户完成任何正在执行的任务的秒数。默认为立即终止。仅在运行Locust分布式时才需要为主进程指定此参数。
posted @ 2025-11-12 15:47  hjy1995  阅读(13)  评论(0)    收藏  举报