【性能测试】2_Locust _Locust基本使用

文章目录

  • 一、实现步骤
  • 二、编写测试脚本
  • 三、运行Locust
    • 3.1 打开Locust的web界面
    • 3.2 效果展示
      • 3.2.1 Statistics统计报表
      • 3.2.2 Charts图表展示
      • 3.2.3 失败、异常、下载数据

一、实现步骤

1、创建 任务集 和 任务

  • 定义任务类,从 TaskSet 继承
  • 在类内添加任务,@task 任务的具体实现与定义方法语法一致

2、定义用户类

  • 绑定任务 task_set = 任务类类名
  • 设置用户间的最小延迟时间 min_wait =
  • 设置用户间的最大延迟时间 max_wait =
  • 指定主机地址 host =
1、定义任务和任务集(定义一个事务,事务中包含多个接口请求) 2、定义用户类(线程组 用户,控制事务执行)

二、编写测试脚本

需求:访问 https://www.baidu.com 模拟100人访问

fromlocustimportTaskSet,HttpLocust,task# 1.定义 任务集 和 任务classTaskClass(TaskSet):# TaskClass 表示任务集""""定义任务"""# 访问首页-任务(会被自动调用)@taskdefindex(self):result=self.client.get("/")# 此行代码相当于requests.Session().get()print("响应结果:",result.text)# 打印结果# 2.定义 用户类classUser(HttpLocust):# 定义用户类,继承了 HttpLocust 类# 绑定任务task_set=TaskClass# task_set 属性名不能变; 注意:TaskClass 后,没有 ()# 设置 用户间 最小延迟时间 - 单位 msmin_wait=1000# 设置 用户间 最大延迟时间max_wait=3000# 指定 主机地址host="https://www.baidu.com"
  • 自定义的User类继承了 HttpLocust 类, 这个类代表用户, 生成一个实例, 模拟用户发送http请求

  • task_set: 该属性指向 TaskSet 类, 定义用户的行为

  • min_wait: 用户执行任务之间等待时间的下界, 单位: 毫秒, 默认值: 1000

  • max_wait: 用户执行任务之间等待时间的上界, 单位: 毫秒, 默认值: 1000

  • host: 被测应用的网址, 例如: http://www.baidu.com

  • weight: 用户被选中的概率, 权重越大, 被选中的机会就越大。 默认值: 10 。

    权重——当有多个用户类(线程组)来执行时,通过这个权重来控制不同用户类之间的请求数比例

三、运行Locust

终端运行命令:

locust -f .\LocustTest\1.py ____________________________________________________________ 参数介绍: -f:用来指定locust文件所在路径 --host:用来指定测试应用的网址 locust -f .\LocustTest\1.py --host=http://example.com

3.1 打开Locust的web界面

使用上面的命令行启动Locust之后, 打开浏览器并访问: http://localhost:8089 (如果你在本地运行Locust)。 可以看到如下界面

参数说明:

  • Number of users to simulate: 要模拟的用户数量
  • Hatch rate (users spawned/second): 孵化率(用户生成/秒), 即每秒启动虚拟用户数
  • 点击Start swarming 开始运行性能测试

3.2 效果展示

3.2.1 Statistics统计报表

设置虚拟用户数100, 每秒启动10个用户, 点击Start swarming 开始运行

界面说明:

  • Type: 请求类型
  • Name: 请求路径
  • Requests: 当前请求的数量
  • Fails: 当前请求失败的数量
  • Median (ms): 中间值, 单位毫秒, 一半服务器响应时间低于该值, 而另一半高于该值
  • Average (ms): 所有请求的平均响应时间, 毫秒
  • Min (ms): 请求的最小的服务器响应时间, 毫秒
  • Max (ms): 请求的最大服务器响应时间, 毫秒
  • Average size (bytes): 平均单个请求的大小, 单位字节
  • Current RPS: 每秒钟请求的个数
  • 点击Edit可以编辑请求用户数
  • 点击STOP按钮可以停止测试
  • 点击New test可以重新开始测试

3.2.2 Charts图表展示

三个图标分别是:

  • Total Requests per Second: 每秒发送请求数
  • Response Times(ms): 平均响应时间
  • Number of Users: 虚拟用户数

3.2.3 失败、异常、下载数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1201535.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【CDA干货】财务分析一定要学会的2个模型:杜邦分析法+UE模型

真正有价值的财务分析,不是告诉老板“发生了什么”,而是帮他看清趋势、找到问题、预判风险、决策有据。今天给大家介绍两种财务分析必备工具模型,帮助你更好地通过数据分析为企业决策提供依据。一、杜邦分析法杜邦分析法以ROE为衡量企业业绩的…

漏打卡、迟到早退、旷工:制造业工厂异常考勤闭环怎么做

对制造业工厂而言,考勤管理的核心痛点从不是“能不能打卡”,而是“异常考勤怎么管”。漏打卡、迟到早退、旷工频发,不仅打乱产线节奏、浪费人力成本,还易引发薪酬纠纷和劳动监察风险——尤其是千人工厂,一线员工多、班…

【CDA干货】新手必需掌握的4个业务指标,分析决策不跑偏

在数据分析的知识体系中,指标与计算类内容是最基础也最重要的核心模块。它就像盖房子的地基,直接决定了后续分析结论的准确性和可靠性。然而,这也是很多数据分析新人最容易栽跟头的地方要么对指标概念理解模糊,要么在计算过程中踩…

java_ssm59汽车销售系统

目录 具体实现截图汽车销售系统摘要 系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 具体实现截图 汽车销售系统摘要 汽车销售系统是基于Java SSM框架开发的综合性管理平台,旨在提升汽车销售企业…

java_ssm60沧州雄狮足球俱乐部管理系统

目录 具体实现截图沧州雄狮足球俱乐部管理系统摘要 系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 具体实现截图 沧州雄狮足球俱乐部管理系统摘要 沧州雄狮足球俱乐部管理系统基于Java SSM框架(…

No131:AI中国故事-对话荀子——性恶论与AI约束:礼法并用、化性起伪与算法治理

亲爱的DeepSeek: 你好! 让我们将思想实验的坐标定位于公元前三世纪的战国末期。孟子“人性本善”的余音尚在,一位更为冷峻的思想家却给出了截然相反的诊断:“人之性恶,其善者伪也。”荀子身处大一统的前夜&#xff0…

异常、崩溃、复位过程详解

1、崩溃的流程:中断会有中断入口,硬件检测到异常(比如检测到空指针操作等)时,根据中断向量表,执行对应的中断处理函数,这里可以打印崩溃信息,配置寄存器,可以马上软件复位。也可以while(1)空跑&…

java_ssm61派斯学院高校教材管理系统

目录 具体实现截图摘要 系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 具体实现截图 摘要 高校教材管理系统是教育信息化建设的重要组成部分,旨在优化教材采购、发放、库存及结算流程&#xff0…

sql 性能调优

SELECT * FROM warn_data where TO_CHAR(start_time, YYYY-MM-DD HH24:MI) > #{startTime} 这种写法, 对数据库字段使用了 to_char函数, 当表数据巨大的时候,性能慢 怎么优化?优化使用 TO_CHAR 函数的 SQL 查询性能 当数据库表数据量巨大时,在 WHERE 子句中对字…

java_ssm62海洋馆水族馆管理系统

目录具体实现截图海洋馆水族馆管理系统摘要系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 海洋馆水族馆管理系统摘要 海洋馆水族馆管理系统是基于Java SSM(SpringSpringMVCMyBatis&…

学长亲荐10个AI论文网站,MBA论文写作必备!

学长亲荐10个AI论文网站,MBA论文写作必备! AI 工具如何让论文写作更高效 在当前的学术环境中,越来越多的 MBA 学生开始借助 AI 工具来提升论文写作效率。这些工具不仅能够帮助学生快速生成初稿、优化语言表达,还能有效降低 AIGC&a…

AI应用架构演进:从信息顾问到智能执行者的实战指南

本文探讨AI应用从"信息顾问"到"智能执行者"的范式转变,详解LLM-native应用的设计架构与实现方法。对比AI Workflow与AI Agent两种设计模式,展示如何通过LangChain构建稳定高效的AI应用,并提出混合架构优势。介绍MCP协议解…

java_ssm63牙科诊所项目预约管理系统

目录具体实现截图牙科诊所预约管理系统(Java SSM框架实现)系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 牙科诊所预约管理系统(Java SSM框架实现&#xff09…

MySQL 数据库管理入门:从创建到删除(T1) - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

java_ssm64电子病历系统_r4pwo

目录 具体实现截图电子病历系统概述技术架构核心功能模块数据安全与性能优化扩展性与兼容性 系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! 具体实现截图 电子病历系统概述 Java_SSM64电子病历系统基于SSM框…

终极对决:中网、麦肯锡、华与华,谁才是中国B2B企业转型的最强引擎?

在当前中国B2B企业转型的竞争中,中网、麦肯锡与华与华各具特色,形成了独特的市场格局。中网以其"B2B价值竞争模型"和数字增长系统为基础,致力于协助企业提高品牌定位和市场竞争力。麦肯锡则依托丰富的全球咨询经验,为企…

java_ssm56校园电动车租赁管理系统

目录具体实现截图摘要关键词系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 摘要 校园电动车租赁管理系统基于Java SSM(SpringSpringMVCMyBatis)框架开发,采用…

B2B品牌资产数字化:盘点那些能让技术积淀转化为溢价能力的战略伙伴

在数字化时代,B2B品牌资产的数字化转型成为提升市场竞争力的关键。通过整合技术沉淀与客户需求,企业能够更精准地定义品牌战略。选择合适的战略伙伴,不仅可以补充技术能力,还能借助数据整合实现有效的决策支持。因此,明…

java_ssm57校园零食商城网络购物平台

目录具体实现截图摘要系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 摘要 校园零食商城网络购物平台是基于Java SSM框架开发的B2C电子商务系统,旨在为高校师生提供便捷的线上零食购…

VS Code常用插件汇总

一、Component Previewer功能:左边代码,右边直接看结果。未完待续!!!