测试工具之压测工具JMeter(一)

有时候我们接到的需求是秒杀或者抽奖类的功能开发,这时候可能会在某一时间点大量请求并发,我们手工自测很难发现一些高并发场景下的问题,这时候可以借助一些压测工具帮我们模拟出大量请求来测试我们的接口是否能满足业务要求。JMeter是Apache 旗下的开源软件。

JMeter支持测试的应用/服务/协议有很多例如:Web服务 (HTTP, HTTPS )、 Webservices、Database via JDBC、FTP、LDAP、Mail - SMTP(S), POP3(S) and IMAP(S)、Native commands or shell scripts、TCP、Java Objects等等。

1.JMeter下载

访问Apache官方网站https://jmeter.apache.org/download_jmeter.cgi

点击apache-jmeter-5.5.zip即可开始下载

下载完成后解压apache-jmeter-5.5.zip

2.使用

进入bin目录点击jmeter.bat文件即可打开主jmeter界面

2.1切换中文

Options->Choose Language->Chinese(Simplified)

2.2创建测试计划

如下界面中可设置激活名称、注释等信息。一个计划中可创建多个线程组

2.2.1创建线程组

TestPlan->添加->线程(用户)->线程组

线程组可设置名称和注释,一个线程相当于一个用户请求。比如线程数填100,Ramp-up时间填1,循环次数填1,就表示在1秒内发送100次请求,执行一次。

2.2.2创建HTTP请求

在线程组上点击右键,添加->取样器->HTTP请求

Web服务器:设置请求的协议,默认是http,ip填写测试服务器地址,端口号是是测试应用的端口。

HTTP请求:选择接口支持的请求方法,路径为url的请求路径(GET请求的参数可以直接带在路径上或在下面的参数配置表格中通过点击"添加"按钮来添加请求参数)

2.2.3创建察看结果树

在HTTP请求上点击右键,添加->监听器->察看结果树

2.3.4添加聚合报告

在HTTP请求上点击右键,添加->监听器->聚合报告。

说明:

TestPlan:测试计划,相当于一个工程,

Thread Group:线程组,相当于模拟的请求数,一个线程相当于一个用户请求

察看结果树:监听发送请求时各个请求的状态

聚合报告:汇总一次测试的数据

2.3.5 开始测试

点击界面工具栏的绿色三角按钮

2.3.6查看报告

选择其中的请求可以在右边看到这个请求地址、请求时间、请求数据长度等详细信息

选择聚合报告可以查看本轮测试的数据报告

说明:

样本:请求的次数(线程数*循环次数)

平均值:响应时间的平均用时,单位是毫秒

中位数:响应时间的中位数,单位是毫秒

90%百分位:90%的响应时间小于该数值,单位是毫秒

95%百分位:含义和90%类似

99%百分位:含义和90%类似

最小值:该次测试最小响应时间,单位是毫秒

最大值:该次测试最大响应时间,单位是毫秒

异常%:该次测试出现异常的请求比例

吞吐量:等同QPS(测试的接口处理请求的能力)

接收KB/Sec:响应数据的接收速率

发送KB/Sec:请求数据的发送速率

相关推荐
祉猷并茂,雯华若锦4 小时前
Selenium与Playwright元素定位终极对决
selenium·测试工具
小白学大数据8 小时前
长周期爬虫的数据一致性:断点续爬 + 事务回滚保障采集质量
开发语言·爬虫·测试工具
小绫网络安全17 小时前
Wireshark抓包完全入门教程:从零开始掌握网络分析
arm开发·测试工具·wireshark
梦想不只是梦与想1 天前
鸿蒙 测试工具:DevEco Testing(一)
测试工具·harmonyos·testing
我的xiaodoujiao2 天前
快速学习Python基础知识详细图文教程17--类型注解和断点调试
开发语言·python·学习·测试工具
泽众云测试2 天前
泽众软件与日联科技达成合作,TestOne自动化测试平台助力搭建工业检测装备数字化品控防线
功能测试·测试工具·自动化
xy34533 天前
SQLMap 核心语法与使用指南(三)
测试工具·渗透测试·sqlmap
我的xiaodoujiao3 天前
快速学习Python基础知识详细图文教程18--多线程
开发语言·python·学习·测试工具
匠测AI说3 天前
Selenium 工作原理深度解析:从架构到实践
selenium·测试工具·架构
程序员杰哥3 天前
依赖于第三方接口时,如何进行测试?
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试