Apache JMeter 压测工具使用记录
工作中遇到了3次压测相关的事情,这里就专门学习记录下Apache JMeter 。
参考资料
官方网站
JMeter 是什么?
Apache JMeter™ 是开源100% Java 应用,设计用来加载测试功能行为和测量性能。
JMeter 特性
很多产品官网都会介绍说有什么什么特性,但是我总会跳过觉得不重要,其实我的这种做法是错误的。一个产品拥有什么样的特性,其实就是快速告诉你产品可以做什么。
特性:
- 能够测试众多不同的应用、服务、协议类型:
- Web - HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET, …)
- SOAP / REST Webservices
- FTP
- Database via JDBC
- LDAP
- Message-oriented middleware (MOM) via JMS
- Mail - SMTP(S), POP3(S) and IMAP(S)
- Native commands or shell scripts
- TCP
- Java Objects
- 完整特色测试IDE快速测试方案记录构建调试
- 命令行模式(从 Java 兼容的系统负载测试)
- 提供HTML报告
- 易于从响应格式提取数据,比如HTML,JSON,XML或任意文本格式
- 可移植性(100%Java)
- 多线程框架:支持多线程并发,同时测试多个功能由分离不同线程组
- 缓存和分析重复测试执行结果
- 高度扩展:
- 可插拔取样器
- 脚本取样
- 提供多个负载统计
- 数据分析和可视化插件
- 提供动态输入的函数或操纵数据
- 易于与Maven,Gradle,Jenkins第三方开源库进行集成
3 使用 jmeter
3.1 安装 jmeter
1 下载二进制安装包
浏览器打开 https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.6.3.zip 下载 jmeter 5.6.3 安装包。
5.6.3 版本要求 JDK 1.8+
2 解压 apache-jmeter-5.6.3.zip
解压后目录:
![[jmeter-install-file-overview.png]]
3 启动 jmeter gui
执行命令:
cd C:\work\soft\apache-jmeter-5.6.3
bin\jmeter.bat
控制台打印:
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
WARN StatusConsoleListener The use of package scanning to locate plugins is deprecated and will be removed in a future release
================================================================================
Don't use GUI mode for load testing !, only for Test creation and Test debugging.
For load testing, use CLI Mode (was NON GUI):
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
& increase Java Heap to meet your test requirements:
Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file
Check : https://jmeter.apache.org/usermanual/best-practices.html
================================================================================
注意:控制台输出内容提示,GUI 模式仅用于调试!进行压测必须使用命令行模式!
启动界面如下:
3.2 添加一个 http 测试方案
3.2.1 调整测试方案名
按如下图顺序操作调整方案名后保存:
3.2.2 添加线程组
在【Black Http Test】点击右键 ->【Add】 ->【Threads(Users)】 ->【Thread Group】
调整线程组名称和备注:
鼠标点击【Thread Group】名字会自动变为【线程组】:
3.2.3 添加 HTTP 采样器
【线程组】右键 ->【Add】->【Sampler】->【HTTP Request】
调整 HTTP 请求名,并添加 http 接口地址:
3.2.4 添加结果监听器
【线程组】右键 ->【Add】->【Listener】->【View Results Tree】
调整名字:
3.2.5 添加汇总报告
【线程组】右键 ->【Add】->【Listener】->【Aggregate Report】
调整名字:
3.3 执行测试方案
选中【线程组】->点击工具栏的 start 按钮
查看结果:
查看汇总报告:
本文来自博客园,作者:不安分的黑娃,转载请注明原文链接:https://www.cnblogs.com/lihw-study/p/15409072.html