Locust:简介和基本用法

技术Locust:简介和基本用法 Locust:简介和基本用法我个人在性能测试工作中,负载生成工具使用的大多都是jmeter,现在来看看locust,因为可以用python编写脚本,进行定制化,而我自己

蝗虫:介绍和基本用法

就我个人而言,在我的性能测试工作中,大多数负载生成工具都是jmeter。现在我们来看一看蝗虫,因为我可以使用python编写脚本并进行自定义,但是我自己更多地使用python,所以我使用这个性能工具。

官方网站:https://www.locust.io/

正式文件:https://docs.locust.io/en/stable/index.html

一、认识Locust

1、定义

蝗虫是一个易于使用的分布式负载测试工具,它完全基于事件,即一个蝗虫节点也可以在一个进程中支持数千个并发用户,并通过gevent使用轻量级进程(即在自己的进程中运行),无需回调。

蝗虫的意思是蝗虫,很有影响力。性能测试就像蝗虫攻击。

看官网的介绍:

开源负载测试工具。

用Python代码定义用户行为,让数百万用户同时涌入你的系统。

2、特点

无需编写繁琐的UI或臃肿的XML代码,基于协同学而非回调,脚本编写简单易读;

有基于we简洁HTML JS的UI用户界面,可以实时显示相关测试结果;

支持分布式测试,用户界面基于网络,具有跨平台、易扩展的特点;

所有繁琐的I/O和协作程序都委托给gevent来替代其他工具的局限性;

3、locust与jmeter的区别

工具

区分

测试工具

需要通过在UI界面中选择组件来“编写”脚本。模拟的负载是线程绑定的,这意味着每个模拟的用户需要一个单独的线程。单个装载机可以模拟的负载数量是有限的。

蝗虫

通过编写易于阅读的代码来完成测试脚本。基于事件,在相同的配置下,单个负载机可以模拟的负载数量远远超过jmeter。

PS:然而,蝗虫的局限性在于它对测试过程的监控和测试结果的显示不如jmeter全面和详细,需要二次开发来满足日益复杂的性能测试要求。

二、安装Locust

###

在mac下安装蝗虫

pip安装蝗虫

检查蝗虫是否安装成功。

蝗虫救助

####

三、一个简单的示例

准备脚本

我们来看看官网的例子:

从蝗虫导入HttpUser,任务

类HelloWorldUser(HttpUser):

@task

def hello_world(self):

self.client.get('/hello ')

self.client.get('/world ')

###

启动界面

将代码放在当前目录下名为locustfile.py的文件中,然后运行locust:

也就是说,将上面的代码放在一个名为locustfile.py的文件中,然后直接从这个文件夹下的命令行运行它:locustfile。

一旦你启动了蝗虫,打开一个浏览器,指向http://localhost:8089。你会收到这样的问候

所以访问http://0.0.0.0:8089/查看蝗虫提供的界面。

###

界面的描述和使用

要模拟的用户数:设置模拟用户总数。

衍生率(每秒衍生的用户数):每秒启动的虚拟用户数。

主机,您要测试的地址,主机

开始群集:执行蝗虫脚本

####

测试结果界面

我使用我的一个本地接口地址,http://127.0.0.133605000/

然后你可以看到刷刷开始在本地看到请求。

PS:点击停止停止蝗虫脚本:

类型:请求类型,即接口的请求方法;

名称:请求路径;

Requests:当前完成的请求数;

失败:当前失败的次数;

中值:响应时间的中间值,即50%的响应时间在此数值范围内,单位为毫秒;

Average:平均响应时间,以毫秒为单位;

Min:最小响应时间,以毫秒为单位;

Max:最大响应时间,以毫秒为单位;

内容大小:所有请求的数据量,以字节为单位;

Reqs/sec:每秒处理的请求数,即QPS;

###

各模块说明

新测试单击此按钮可编辑模拟的虚拟用户总数和每秒启动的虚拟用户数;

统计信息:类似于jmeter中的Listen的聚合报告;

图表:显示测试结果变化趋势的图表,分别是每秒完成的请求数(RPS)、响应时间和不同时间的虚拟用户数;

失败:失败请求的显示界面;

异常:异常请求的显示界面;

下载数据:测试数据下载模块,以CSV格式提供三种下载,分别是:统计、响应时间、异常;

###

这是简单的介绍和使用,需要进一步研究。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/124354.html

(0)

相关推荐

  • Python列表的定义及使用方法是什么

    技术Python列表的定义及使用方法是什么这篇文章主要介绍“Python列表的定义及使用方法是什么”,在日常操作中,相信很多人在Python列表的定义及使用方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操

    攻略 2021年11月1日
  • 怎样分析SpringMVC中的HandlerAdapter

    技术怎样分析SpringMVC中的HandlerAdapter这篇文章给大家介绍怎样分析SpringMVC中的HandlerAdapter,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Dispatc

    攻略 2021年12月2日
  • 推测拼音,不可以事先推测是什么词语

    技术推测拼音,不可以事先推测是什么词语1、未雨绸缪 读音推测拼音:wèi yǔ chóu móu。 解释:天还没有下雨,先把门窗绑牢。比喻事先做好准备工作。 引证:先秦佚名《诗经·豳风·鸱鸮》:“迨天之未阴雨,彻彼桑土,

    生活 2021年10月21日
  • VUE uni-app的常用API是什么

    技术VUE uni-app的常用API是什么VUE uni-app的常用API是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、路由与页面跳转uni.

    攻略 2021年10月20日
  • Hibernate持久化类怎么用

    技术Hibernate持久化类怎么用这篇文章主要介绍了Hibernate持久化类怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Hibernate持久

    攻略 2021年12月1日
  • 如何租用香港服务器更便宜

    技术如何租用香港服务器更便宜由于每个网站都会有独特的硬件配置需求需求。而不同类型的服务器需要的硬件配置的价格也是不一样的,出于这个原因,对于不同类型的网站所有者,都没有所谓最便宜的的香港服务器。作为网站多有者在租用服务器

    礼包 2021年10月19日