locust性能测试工具
介绍
官方网站:https://www.locust.io/
官方文档:http://docs.locust.io/en/stable/installation.html
locust与jmeter区别
- 开源:软件都为免费的开源软件
- 使用:jmeter提供GUI界面便于用户操作,locust则需要python编程基础
- 支持协议:使用JMeter,您可以使用内置函数和第三方插件。您无需编码即可测试不同的协议甚至数据库。这些包括JDBC,FTP,LDAP,SMTP等等。
而Locust主要用于基于HTTP Web的测试。但是,您也可以自己编码自定义Python函数进行其他协议的性能测试。 - 并发:JMeter 是基于线程的模型,它为每个用户分配一个单独的线程。每个步骤的线程分配和基准测试需要大量资源,这就是为什么JMeter在一台机器上模拟的用户数量非常有限的原因。
相反,Locust有一个完全不同的用户模拟模型,它基于事件和异步方法实现。这种实现可以让Locust框架在一台机器上轻松模拟数千个并发用户 - 脚本录制:jmeter具有脚本录制的内置功能,而Locust根本没有此功能。除此之外,还有许多第三方插件可以为JMeter制作脚本录制。
安装
pip3 install locust
查看安装版本
locust -V
任务权重
@task
def hello_world(self):self.client.get(url='/s?wd=phyger',verify=False)@task(3)
def view_items(self):for item_id in range(10):self.client.get(f"/item?id={item_id}", name="/item")time.sleep(1)
声明两个@task,其中一个@task的权重为3,表示view_items被选择的可能性是hello_world的三倍,运行后,随机挑选一个@task执行,任务执行完,用户将在等待时间后,会再次随机选择一个新任务重复执行
用户权重
如果文件中存在多个用户类,并且在命令行上没有指定用户类,Locust将生成相同数量的每个用户类。您还可以通过将它们作为命令行参数传递来指定要使用同一locustfile中的哪些用户类:
locust -f locust_file.py WebUser MobileUser
可以为用户类设置权重,例如,WebUser的可能性是MobileUser的三倍:
class WebUser(User):
weight = 3
class MobileUser(User):
weight = 1
可以为用户类具体的用户数,这种情况下,权重属性将被忽略:
class AdminUser(User):
wait_time = constant(600)
fixed_count = 1
on_start和on_stop
def on_start(self):self.client.post("/login", json={"username":"foo", "password":"bar"})
任务开始时调用on_start,同样的任务结束可以调用on_stop
wait_time
class QuickstartUser(HttpUser):wait_time = between(1, 5)host = "https://www.baidu.com"@taskdef getIndex(self):with self.client.get(url='/s?wd=hello', verify=False) as rep:if not rep.status_code:self.environment.runner.quit()"""未指定wait_time,则下一个任务将在完成后立即执行between最小值和最大值之间的随机时间constant固定时间""
locust性能测试工具相关推荐
- pythonlocust使用方法_python locust 性能测试:locust安装和一些参数介绍
安装参考 https://www.cnblogs.com/fnng/p/6081798.html ps:python3.7暂不支持locust:python3安装建议克隆github上的项目 可能需要 ...
- python性能测试可视化_locust安装及其简单使用----基于python的性能测试工具
1.已安装python3.6 ,安装步骤略 pip安装: pip install locust 检查locust是否安装成功 locust --help 2.安装 pyzmq If you inten ...
- 深入浅出开源性能测试工具 Locust (使用篇 1)
在<[LocustPlus序]漫谈服务端性能测试>中,我对服务端性能测试的基础概念和性能测试工具的基本原理进行了介绍,并且重点推荐了Locust这一款开源性能测试工具.然而,当前在网络上针 ...
- 基于python的性能测试工具–locust
基于python的性能测试工具–locust https://www.cnblogs.com/chunyanxu/p/8732720.html 性能测试工具Locust https://www.cn ...
- python服务器性能测试工具locust使用指南
文章目录 前言 安装 基本使用 User类 @task装饰器 任务间隔 @tag装饰器 前置与后置 HttpUser类 常用参数 命令行配置 配置文件配置 常用压测场景实战 高用户高并发场景压测 每个 ...
- 性能测试工具Locust和JMeter比较
pache JMeter™和Locust都是是最受欢迎的性能测试工具. JMeter和Locust - 简介 JMeter是久经考验的性能框架之一,其第一个版本大约在20年前发布. 它是用纯Java语 ...
- Python性能测试工具Locust入门
一.性能测试基础 1.性能测试该怎么做? 利用工具模拟真实用户操作. 2.性能测试基础: 性能:事物的性质和能效 -->效率性能 (时间/资源/容量) 思考:如何评价软件系统的性能? 快慢:衡量 ...
- 性能测试工具--locust
在了解性能测试的过程中,了解到了一种性能测试工具locust,整理以下内容(安装及简单实例)仅供参考.更多知识可参考locust.io官网进行查看 locust:有web界面,且支持常见协议.开源免费 ...
- python模块介绍-locustio:性能测试工具locustio
转自:http://automationtesting.sinaapp.com/blog/m_locustio_doc python测试文章 http://weibo.com/cizhenshi?is ...
- [雪峰磁针石博客]2018最佳12个开源或免费web服务器和客户端性能测试工具
更多参考 软件测试专家工具包2性能测试 服务器端性能 image.png Locust.io – 了解服务器端性能的好工具. 语言python3.源码 python3+ python2.7+ gith ...
最新文章
- 一些思考,没想好标题
- 克服DIMM近存计算系统的通信瓶颈,清华软件定义芯片团队提出DIMM间广播技术 | ISCA 2021...
- double free or corruption (fasttop)
- 258. Add Digits
- 基于ZXing的二维码,你可以这样改造它
- python安装第三方库太慢_Python 安装第三方库 pip install 安装慢安装不上的解决办法...
- 软件工程概论 课堂练习 第2次作业5【顺序图思考题——绘制手机拨号顺序图】
- discuz 如何去掉自定义表情
- 直接选择排序(Straight Selection Sort)
- FastStone Capture(FSCapture) 注册码
- 华为手机怎么修改dns服务器,华为域名解析修改dns
- 计算机频率符号,波长、频率和波速
- 网络棋牌游戏创造快乐心情
- 35岁逃离北上广,40岁失业送外卖,中年人的“体面”在于投资自己
- 2021年江苏省教学成果奖(高等教育类)拟获奖项目名单
- 联想拯救者笔记本安装ubuntu系统不能正常关机
- tornado源码分析(四)之future、gen.coroutine
- winform中当laber标签字段过长时
- 自动创建文件夹 pictureBox 显示图片 并调用系统窗体打开文件夹
- html用divagt;做个按钮,Diva验证工具使用说明:
热门文章
- 神经网络-神经元模型、Hebb学习
- 使用Mac文件保险箱加密数据
- python开根_python如何开根号
- VMware ESXi 7.0 U3c SLIC 2.6 Unlocker 集成 Intel NUC 网卡、USB 网卡和 NVMe 驱动
- 电子制作:红外遥控器检测仪的制作
- SEO流量工具-免费SEO流量排名优化工具
- android eclipse ddms 查看线程,android ddms中查看线程释疑
- Java Web Spring框架学习(一)
- struts1,struts2,springMVC终极对比
- 怎样把IPv4转换成IPv6?