目录
本文以python3为例1-环境
2-locust测试demo
3- 运行代码
4-UI页面
本文以python3为例
1-环境
电脑上要安装有pip的环境,可参考我环境配置的文章
python安装和环境配置_Eddision的博客-CSDN博客
安装pyzmq
如果打算让locust分布在多个进程中,可以把pyzmq安装上
pip install pyzmq
安装locust
python3以上需要到git下载locust
GitHub - locustio/locust: Scalable user load testing tool written in Python
下载后在解压路径下打开命令行,输入python setup.py install
2-locust测试demo
打开pycharm,新建python package
创建一个demo,loadtask.py
from locust import HttpUser,TaskSet,task
class UserBehavior(TaskSet):
@task(1)
def baidu(self):
self.client.get("/")
class WebSiteUser(HttpUser):
tasks = [UserBehavior]
min_wait = 3000
max_wait = 6000
代码解读:
定义一个类UserBehavior继承TaskSet
@task注解表示用户行为,括号里面的值表示该行为的权重,数值越大,执行频率越高,不设置默认为1
WebSiteUser()类用于设置生成负载的基本属性
task_set/tasks:指向定义了用户行为的类
min_wait:任务之间最小等待时间,毫秒
max_wait任务之间最大等待时间,毫秒
注意1:网上资源一般第一行是import HttpLocust,后面会报错提示过时,所以直接用HttpUser
注意2:第二个类WebSiteUser中一般写法是“task_set=UserBehavior”,正确的应该是tasks = [UserBehavior],要不然后面会报错
以上两个的未修改时的报错信息:
3- 运行代码
命令:
locust -f loadtask.py --host=https://www.baidu.com
如果启动的文件名称叫“locustfile.py”,并且启动路径就是当前路径,可以直接使用以下命令:
locust --host=https://www.baidu.com
但是我们的文件名是叫“loadtask.py”,所以需要加-f
locust -f loadtask.py --host=https://www.baidu.com
启动成功显示
4-UI页面
启动成功后登录页面
输入localhost:8089/127.0.0.1:8089
这个端口是默认端口号
Number of users to simulate:设置模拟的用户数量,比如某软件总共有100个用户,这里就设置100
Hatch rate :每秒启动的虚拟用户数,比如1秒内同时10个人访问,这里就填10
Start swarming:执行locust脚本
启动后如果没有报错会显示动态数据
如果有报错会在异常页显示



