JMeter—从下载到进行压力测试
JMeter 下载与安装
下载
首先进入 JMeter 官网
点击左侧的“Download Releases”,进入红框圈出的网址
找到 jmeter 文件夹
进入“binaries”文件夹,注意上面有写需要的 Java 版本
我这里选择了5.5版本下载
配置环境变量
将 bin 文件夹添加进系统的环境变量内
配置
解压下载的二进制包,进入bin目录,使用 jmeter.bat 启动程序。启动之后会有两个窗口,一个控制台窗口,一个 GUI 窗口
注意控制台窗口的提示信息
================================================================================
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运行压力测试,GUI仅用于压力测试的创建和调试;执行压力测试请不要使用GUI。使用下面的命令来执行测试:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
并且修改JMeter批处理文件的环境变量:HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m"
通过 【Options】->【Choose Language】-> 【Chinese (Simplified)】变更为简体中文
创建测试
创建线程组
在“测试计划”上右键 【添加】-->【Threads(Users)】-->【线程组】
设置线程数和循环次数。我这里设置线程数为1000,循环2次
配置元件
创建 HTTP 请求默认值
在刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP请求默认值】
填写协议、IP、端口号
创建 HTTP 请求
右键线程组,【添加】-->【取样器】-->【HTTP 请求】,创建 HTTP 请求
填写 HTTP 请求、路径、消息体数据
添加 HTTP 请求头
在我们刚刚创建的线程组上右键 【添加】-->【配置元件】-->【HTTP信息头管理器】
添加断言
线程组上右键 【添加】-->【断言】-->【响应断言】
根据响应的数据来判断请求是否正常。我在这里只判断的响应代码是否为200。还可以配置错误信息
添加查看结果树
线程组上右键 【添加】-->【监听器】-->【查看结果树】
添加完之后,点击运行
询问我们是否保存测试计划,这里先不保存
此时可以看到测试结果
添加汇总报告
线程组上右键 【添加】-->【监听器】--> 【汇总报告】
同样点击运行,能看到汇总报告
保存测试计划
执行测试计划
执行测试计划不能用 GUI,需要用命令行执行
我使用命令为
jmeter -n -t 'Test Plan.jmx' -l result.txt -e -o webreport
说明:
Test Plan.jmx
为测试计划文件路径,因为路径中有空格,Windows powershell 下需要用单引号将路径括起来
result/result.txt
为测试结果文件路径
webreport
为 web 报告保存路径。
web 报告如下