Locust 初体验

大大小小也做过不少项目的性能测试了,loadrunner一直用着比较顺手。可惜破解终究是破解,虽然ta还算稳定。。

ps:还在用lr录脚本压测的同志们,建议虚拟机装个lr 12破解版,12录,11压。

偶然看到了locust的文章,研究并记录。

 

安装:传送门

python已装好的直接pip:pip install locustio

(我这里是Windows 系统 ,官方说如果进行大并发测试的话,建议使用linux。)

安完事 --hlep一下:

-h, –help    查看帮助
-H HOST, –host=HOST    指定被测试的主机,采用以格式:http://10.21.32.33
–web-host=WEB_HOST    指定运行 Locust Web 页面的主机,默认为空 “。
-P PORT, –port=PORT, –web-port=PORT    指定 –web-host 的端口,默认是8089
-f LOCUSTFILE, –locustfile=LOCUSTFILE    指定运行 Locust 性能测试文件,默认为: locustfile.py
–csv=CSVFILEBASE, –csv-base-name=CSVFILEBASE    以CSV格式存储当前请求测试数据。
–master    Locust 分布式模式使用,当前节点为 master 节点。
–slave    Locust 分布式模式使用,当前节点为 slave 节点。
–master-host=MASTER_HOST    分布式模式运行,设置 master 节点的主机或 IP 地址,只在与 –slave 节点一起运行时使用,默认为:127.0.0.1.
–master-port=MASTER_PORT    分布式模式运行, 设置 master 节点的端口号,只在与 –slave 节点一起运行时使用,默认为:5557。注意,slave 节点也将连接到这个端口+1 上的 master 节点。

linux下使用-no-web运行

–no-web    no-web 模式运行测试,需要 -c 和 -r 配合使用.
-c NUM_CLIENTS, –clients=NUM_CLIENTS    指定并发用户数,作用于 –no-web 模式。
-r HATCH_RATE, –hatch-rate=HATCH_RATE    指定每秒启动的用户数,作用于 –no-web 模式。
-t RUN_TIME, –run-time=RUN_TIME    设置运行时间, 例如: (300s, 20m, 3h, 1h30m). 作用于 –no-web 模式。
-L LOGLEVEL, –loglevel=LOGLEVEL    选择 log 级别(DEBUG/INFO/WARNING/ERROR/CRITICAL). 默认是 INFO.
–logfile=LOGFILE    日志文件路径。如果没有设置,日志将去 stdout/stderr
–print-stats    在控制台中打印数据
–only-summary    只打印摘要统计
-l, –list    显示测试类, 配置 -f 参数使用
–show-task-ratio    打印 locust 测试类的任务执行比例,配合 -f 参数使用.
–show-task-ratio-json    以 json 格式打印 locust 测试类的任务执行比例,配合 -f 参数使用.
-V, –version    查看当前 Locust 工具的版本.

(参考:https://www.cnblogs.com/leiziv5/p/7831397.html

web控制台:

现有文件 d:/locust_test.py

运行文件: locust -f  "d:/locust_test.py"  -H http://www.baidu.com

浏览器打开 localhost:8089

Number of users to simulate:要负载的vuser数量

Hatch rate :每秒启动多少vuser

比如10个用户,你想每没5s增加1个vuser,Hatch rate就填0.2

开始之后,这些信息就完全是字面意思了,不做赘述。

需要注意:

ps:点击Edit后编辑,然后开始的测试,是一个新的测试。