python第三方类库locust压力测试

简介: locust是开源免费的压力测试工具,使用简单,复用场景多,报告直观明了。可以单点压力,也可以分布式等方方面面都棒得很。。。

一:代码如下

# coding=utf-8"""    作者:建帅小伙儿    功能:    新增功能:    日期:2022/2/23 17:25"""fromlocustimportHttpUser, between, task, TaskSetimportosfromcommon.agCliimport*importloggingclassTaskTest(TaskSet, CLI):
# 执行并发前置动作,比如清理当前所有sessiondefon_start(self):
"""        description:登录ag, 清理log        :return:        """self.ssh_ag()
self.clear_log()
logging.info('清理log结束,压测开始!!!')
# 压测任务,也可以是@task(10)啥的,这个数字是代表权重,数值越大,执行的频率就越高@taskdeflogin(self):
url='/prx/000/http/localh/login'data= {
"method": "http1",
"uname": "gaojs",
"pwd1": "",
"pwd2": "",
"pwd": "admin",
"submitbutton": "Sign"        }
header= {"Content-Type": "application/json;charset=UTF-8"}
self.client.request(method='POST', url=url, data=data, headers=header, name='登录虚拟站点', verify=False, allow_redirects=False)
# 执行并发测试后执行的动作,比如保存log等操作,查看报告http://localhost:8089/defon_stop(self):
self.ssh_ag()
self.cli_cmd('switch vsite')
self.cli_cmd('session kill all')
logging.info('清理session结束,压测结束,请查看report, http://localhost:8089!!!')
classLogin(HttpUser):
host='https://192.168.120.206'# 每次请求停顿时间wait_time=between(1, 3)
tasks= [TaskTest]
if__name__=="__main__":
os.system("locust -f locust_test.py --host=https://192.168.120.206")

二:报告如下


image.png

image.png


1. Type:请求类型;
2.Name:请求路径;
3.requests:当前请求的数量;
4.fails:当前请求失败的数量;
5.Median:中间值,单位毫秒,一般服务器响应时间低于该值,而另一半高于该值;
6.Average:所有请求的平均响应时间,毫秒;
7.Min:请求的最小的服务器响应时间,毫秒;
8.Max:请求的最大服务器响应时间,毫秒;
9.Content Size:单个请求的大小,单位字节;
10.reqs/sec:每秒钟请求的个数。

 

 

image.png

 image.png

charts页签下面的参数(Total Requsts per Second)

1.(Total Requsts per Secon):吞吐量/每秒响应事务数(rps)实时统计

2.(Response Times):平均响应时间/平均事务数实时统计

3.(Number of Users):虚拟用户数运行

相关文章
|
1月前
|
XML 测试技术 数据格式
Python性能测试Locust简介
Python性能测试Locust简介
Python性能测试Locust简介
|
监控 Java 测试技术
快速入门Python性能测试框架Locust
快速入门Python性能测试框架Locust
332 0
|
Python
python第三方类库locust压力测试
python第三方类库locust压力测试
127 0
python第三方类库locust压力测试
|
XML 测试技术 数据格式
Python性能测试Locust简介
“Locust是一个用于可扩展的,分布式的,性能测试的,开源的,用Python编写框架/工具,它非常容易使用,也非常好学。它的主要思想就是模拟一群用户访问你的网站。每个用户的行为由你编写的python代码定义,同时可以从Web界面中实时观察到用户的行为 ”
Python性能测试Locust简介
|
测试技术 Python Shell
Python Locust对指定网站“一键压测”
[本文出自天外归云的博客园] 前篇 前篇:Python Locust性能测试框架实践 本篇 承上——归纳过程 在前篇的基础上,我们可以利用Locust性能测试框架编写python脚本对指定网站或者接口进行压测,对于Locust的使用我们可以归纳为三步: 1. 编写python压力测试脚本; 2. 在命令行中启动Locust服务并指定压测脚本与hosts等信息; 3. 访问Locust本地网址设定并发量并进行压测。
1783 0
|
测试技术 Shell 数据格式
Python Locust性能测试框架实践
[本文出自天外归云的博客园] Locust的介绍 Locust是一个python的性能测试工具,你可以通过写python脚本的方式来对web接口进行负载测试。 Locust的安装 首先你要安装python2.6以上版本,而且有pip工具。
2784 0
|
7天前
|
机器学习/深度学习 人工智能 前端开发
Python中的模块化编程
【6月更文挑战第17天】Python模块化编程与软件架构设计的关键在于拆分任务到独立模块,提高代码的可维护性、可重用性和可扩展性。例如,学生管理系统可分解为录入、查询和删除模块。MVC和MVVM架构模式有助于组织代码,而微服务和函数式编程将在未来发展中扮演重要角色。通过示例代码,读者能学习如何实现这些概念,提升项目开发效率和质量。
155 57
|
15天前
|
测试技术 虚拟化 云计算
GitHub高赞!速通Python编程基础手册,被玩出花了!
随着云时代的来临,Python 语言越来越被程序开发人员喜欢和使用,因为其不仅简单易学,而且还有丰富的第三方程序库和相应完善的管理工具。 从命令行脚本程序到 GUI程序,从图形技术到科学计算,从软件开发到自动化测试,从云计算到虚拟化,所有这些领域都有 Python 的身影。 今天给小伙伴们分享的这份手册采用以任务为导向的编写模式,全面地介绍了 Python 编程基础及其相关知识的应用,讲解了如何利用 Python 的知识解决部分实际问题。
GitHub高赞!速通Python编程基础手册,被玩出花了!
|
4天前
|
数据挖掘 数据处理 Python
Python编程入门:从基础到实践
【6月更文挑战第26天】这篇文章引导读者逐步学习Python编程,从基础语法如变量、数据类型(整数、浮点数、字符串)到条件语句、循环(if/for/while),再到函数定义和模块导入。通过实例展示了Python在文本处理、数据分析(使用pandas)和Web开发(使用Flask)的应用。学习Python能为初学者开启更广阔的技术领域,如面向对象编程、并发和网络编程等。
|
2天前
|
设计模式 程序员 测试技术
老程序员分享:Python数据模型及Pythonic编程
老程序员分享:Python数据模型及Pythonic编程
12 1