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)

相关推荐

  • HTML5+jQuery如何利用JSSDK在网页中获取地理位置

    技术HTML5+jQuery如何利用JSSDK在网页中获取地理位置这期内容当中小编将会给大家带来有关HTML5+jQuery如何利用JSSDK在网页中获取地理位置,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文

    攻略 2021年11月16日
  • 9、gRPC

    技术9、gRPC 9、gRPC之前 protobuf 时安装过,不需安装快速开启 grpc 服务
    新建目录 testGrpc 。以及testGrpc/service 和testGrpc/clientte

    礼包 2021年12月5日
  • ajax是网页开发技术吗

    技术ajax是网页开发技术吗这篇文章主要介绍“ajax是网页开发技术吗”,在日常操作中,相信很多人在ajax是网页开发技术吗问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ajax是网页开发

    攻略 2021年12月9日
  • 最小的质数和最小的合数是什么,什么是合数?最小的合数是多少

    技术最小的质数和最小的合数是什么,什么是合数?最小的合数是多少合数指自然数中除了能被1和本身整除外,还能被其他数(0除外)整除的数。与之相对的是质数,而1既不属于质数也不属于合数。最小的合数是4。合数的性质最小的质数和最

    生活 2021年10月19日
  • 无锡旅游景点大全,去无锡旅游哪些景点值得推荐

    技术无锡旅游景点大全,去无锡旅游哪些景点值得推荐无锡是个好地方,有水有山,可以说依山傍水,有很多著名的可供游人一赏。1、太湖,当你听到太湖美这首歌曲时,你就会感到太湖美,名副其实无锡旅游景点大全;2、三国水浒城,又是中央

    生活 2021年10月24日
  • QT+树莓派如何实现一个简单的播放器

    技术QT+树莓派如何实现一个简单的播放器这篇文章给大家介绍QT+树莓派如何实现一个简单的播放器,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。说起树莓派,买了也有一段时间了,但是始终都没有做出什么好玩

    攻略 2021年11月19日