locust入门 —— 无图模式和分布式执行

无图模式

无图模式即不通过UI界面进行执行locust测试用例。locust提供了命令参数,我们只需要在执行时添加一个--headless标签即可

Disable the web interface, and start the test immediately. Use -u and -t to control user count and run time

以下内容为一个命令行命令,为了方便查看,我做了换行处理

 locust -f 被执行文件名.py
   --headless
   -u 6 
   -t 5 
   -r 2 
   -H https://api.weixin.qq.com
   -- csv demolocust
  • -u: 表示用户数

  • -t: 表示执行时间

  • -r: 表示每秒增加用户数(Spawn rate)

  • -H: 即--host

  • --csv: 保存执行数据到csv文件

执行以后就可以看到项目文件夹中得到4个csv文件:

分布式执行

分布式模式下执行分两种情况

  1. 你的主机/Master和从属/worker在一台机器上

  2. 你的主机和从属在不同的机器上

主机master和从属worker在同一台机器上

  1. 先启动主机命令

locust -f 执行文件名.py --master

  1. 回到桌面,打开命令行/cmd,然后切换到你的项目目录,执行命令

locust -f 文件名.py --worker

执行以后回到Pycharm,就可以看到你的主机有了响应

如果你想在一台机器上启动多个worker,就重复步骤二即可。

随着你的增加,Currently n clients显示数量也会增加。

然后来到web端写入用户数和增长率

点击执行以后,就会在master看到任务被分配给worker了:

而在worker里,则显示了打印的信息:

注意一般不建议启动无限多的从属任务,启动多少个worker从属可以根据你的电脑是多少核,几核的电脑就启动多少个worker。

主机master和从属worker在不同机器上

思路一样,只是命令有些变化

首先把你的项目拷贝到从属机器上,然后在Master机器上启动主进程

locust -f 文件名.py --master

然后到你的另一台机器上启动从属进程

locust -f 文件名.py --worker --master-host 主机IP --master-port 5557
  • 先启动master还是先启动worker不影响

  • 5557是默认端口,如果没有修改过端口,--master-port 5557可以不写

官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值