Locust 安装环境说明

Locust的安装(注意)


  • 新版本以2开头,现在最新稳定版为2.10.1;   (2.x版本)

  • 旧版本以0开头,比如我现在安装的是开发版本为0.12.2.
那么他们有什么区别呢?目前有如下发现:

安装方式的变化:

旧版本安装命令为:pip install locustio
新版本安装命令为:pip install locust

参数变化

图形模式启动参数: 旧版本为--no-web 新版本为--headless
-代码中类的变化
集合点
下面就新旧两个版本,对集合点进行实现:

**当前新Locust的版本:**

2.x版本

locust 2.15.1

gevent 22.10.2
greenlet 2.0.2

1.x版本
Locust 1.4.3    (2.10.1)
gevent 21.1.2
greenlet 1.0.0

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/adbef20f412343018ebe0923500f3cec.png)

出现的错误(可以进行python版本升级进行解决)

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/60ef30b734474dcea66912e6f33102b2.png)

1.1、   --->  pip install locust

2、安装 **pyzmq**

If you intend to run Locust distributed across multiple processes/machines, we recommend you to also install pyzmq.

如果打算运行Locust 分布在多个进程/机器,需要安装pyzmq.

通过pip命令安装。 />  pip install pyzmq

3、安装成功,CMD敲入命令验证。 /> locust --help

4:如果想更换python的版本的话,可以从以下这个官网进行下载

https://www.python.org/downloads/windows/

5:先把之前的python中安装的第三方包保存成一个文本文件,操作方法,打开cmd,进入原来版本的Scripts目录输入以下命令,会生成一个requirements.txt文件保存当前环境的所有第三方包

```
pip freeze> requirements.txt
```

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/b6fdf5b6987b4d9b86e5e33089e43a11.png)

这个是装成功的效果图

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/76fecce1438048b2a7c5d8112855f6ed.png)

**旧版本实现:**

* locustio 0.12.2
* gevent 1.4.0
* greenlet0.4.15

如果你装成功的情况下,你可以在命令行里面运行

locust -V  可以看到我们的locust的版本号

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/3fb13aaaf0d54a23b1eed2519794b857.png)

-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 节点。
  • --master-bind-host=MASTER_BIND_HOST    Interfaces (hostname, ip) that locust master should bind to. Only used when running with --master. Defaults to * (all available interfaces).
  • --master-bind-port=MASTER_BIND_PORT    Port that locust master should bind to. Only used when running with --master. Defaults to 5557. Note that Locust will also use this port + 1, so by default the master node will bind to 5557 and 5558.
  • --expect-slaves=EXPECT_SLAVES    How many slaves master should expect to connect before starting the test (only when --no-web used).

**--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    只打印摘要统计
--no-reset-stats    Do not reset statistics once hatching has been completed。
-l, --list    显示测试类, 配置 -f 参数使用
--show-task-ratio    打印 locust 测试类的任务执行比例,配合 -f 参数使用.
--show-task-ratio-json    以 json 格式打印 locust 测试类的任务执行比例,配合 -f 参数使用.

**-V, --version    查看当前 Locust 工具的版本**.

如果在执行脚本文件的时候出现这样的错误,大概率是你装的版本不兼容,可以按照我上面给大家提供的版本进行安装

![image.png](https://fynotefile.oss-cn-zhangjiakou.aliyuncs.com/fynote/fyfile/15480/1679988457057/2c40d31f834d492e9ea39cd0ab7bd053.png)
posted @ 2024-03-12 22:09  yongheng999  阅读(335)  评论(0)    收藏  举报