locust那些踩过的坑

安装(windows系统下)

使用pip安装,前提python版本是2.6+,我的是2.7.11,用python3的,pip方式无法安装成功

                                    pip install locustio

测试:locust -h   

如果有帮助信息出来,则是安装成功。


基本使用

使用Pycharm,新建一个project,如果环境中安装了多个python版本,创建项目时,需要选择python2对应的版本,否则,后面运行脚本会报找不到locust


新建项目


测试脚本

test1.py

    # -*- coding: utf-8 -*-       #因为加了中文注释,防止报语法错误,增加编码方式说明

fromlocustimportHttpLocust, TaskSet, task

classUserBehavior(TaskSet):

@task(1)

defbaidu(self):#一个行为,访问报读首页

self.client.get("/")#用@task() 装饰该方法为一个任务,1表示一个Locust实例被挑选执行的权重,数值越大,执行频率越高。

classWebsiteUser(HttpLocust):#WebsiteUser()类用于设置性能测试

task_set = UserBehavior#task_set :指向一个定义了的用户行为类。

min_wait =3000#min_wait :用户执行任务之间等待时间的下界,单位:毫秒。

max_wait =6000#max_wait :用户执行任务之间等待时间的上界,单位:毫秒。


执行

进入cmd

进入到项目所在的目录,执行以下命令

        locust -f load_test1.py --host=https://www.baidu.com

test1.py为测试脚本,https://www.baidu.com为测试的网站。

-f 指定性能测试脚本文件。

–host 指定被测试应用的URL的地址,注意访问百度使用的HTTPS协议。

启动效果

打开浏览器访问:http://127.0.0.1:8089或localhost:8089


Number of users to simulate设置模拟用户数

Hatch rate (users spawned/second)孵化率?不知道怎么翻译,每秒产生(启动)的用户数。

点击Start swarming开始运行性能测试。


分析测试结果


性能测试参数

Type: 请求的类型,例如GET/POST。

Name:请求的路径。这里为百度首页,即:https://www.baidu.com/

request:当前请求的数量。

fails:当前请求失败的数量。

Median:中间值,单位毫秒,一半的服务器响应时间低于该值,而另一半高于该值。

Average:平均值,单位毫秒,所有请求的平均响应时间。

Min:请求的最小服务器响应时间,单位毫秒。

Max:请求的最大服务器响应时间,单位毫秒。

Content Size:单个请求的大小,单位字节。

reqs/sec:是每秒钟请求的个数。


命令行执行

locust-f test1.py --host=https://www.baidu.com --no-web -c 10 -r 2 -t 1m

启动参数:

–no-web 表示不使用Web界面运行测试。

-c 设置虚拟用户数。

-r 设置每秒启动虚拟用户数。

-t 设置设置运行时间。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Locust是什么? Locust 是一个开源负载测试工具。使用 Python 代码定义用户行为,也可以仿真百万个...
    zychen143阅读 12,028评论 1 2
  • Locust文件就是一般的Python文件。唯一的需求就是它至少需要一个继承于Locust的类. Locust类 ...
    Yuan_Jie阅读 9,523评论 0 7
  • 又来到了一个老生常谈的问题,应用层软件开发的程序员要不要了解和深入学习操作系统呢? 今天就这个问题开始,来谈谈操...
    tangsl阅读 9,674评论 0 23
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,224评论 19 139
  • 事务隔离级别 一、数据库事务隔离级别数据库事务的隔离级别有4个,由低到高依次为Read uncommitted 、...
    梁行之阅读 5,706评论 0 0

友情链接更多精彩内容