Apache JMeter 3.1压力测试
- Apache JMeter 3.1压力测试监控cpu、内存情况
- 1.下载Apache JMeter 3.1
- 1.1 添加线程组
- 1.2 添加http请求
- 1.3 增加http请求头设置
- 1.4 添加csv配置
- 1.5 添加测试结果监控配置
- 2. 监控插件下载
- 3. 服务端插件下载并启动
- 3.1 下载
- 3.2 解压并启动
- 3.3 增加服务器配置监控
- 4. 查看执行结果
- 5. 非GUI模式测试
Apache JMeter 3.1压力测试监控cpu、内存情况
监控服务器CPU、内存、磁盘、网络等相关资源需要使用3.1版本并使用以下插件
客户端:JMeterPlugins-Standard和JMeterPlugins-Extras
服务端:ServerAgent
1.下载Apache JMeter 3.1
官网链接:https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-3.1.zip
解压安装包,进入 bin 目录,点击 jmeter.bat 启动 Jmeter
1.1 添加线程组
- 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。
- Ramp-up就是每个线程的执行时间间隔,0表示并发
- 循环次数:每个线程发送请求的次数。如果线程数为 10,循环次数为 100,那么每个线程发送 100 次请求。总请求数为 10*100=1000 。如果勾选了“永远”,那么所有线程会一直发送请求,一到选择停止运行脚本。
- Delay Thread creation until needed:直到需要时延迟线程的创建。
- 调度器配置:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)
调度器配置参数: - 持续时间(秒):测试持续时间,会覆盖结束时间
- 启动延迟(秒):测试延迟启动时间,会覆盖启动时间
1.2 添加http请求
1.3 增加http请求头设置
1.4 添加csv配置
csv文件内容如下:
1.5 添加测试结果监控配置
2. 监控插件下载
客户端下载地址:Download :: JMeter-Plugins.org
下载完成后解压客户端的两个文件,进入路径JMeterPlugins-Extras\lib\ext,JMeterPlugins-Standard\lib\ext,复制JmeterPlugins-Extras.jar,JmeterPlugins-Standard.jar两个文件,放到JMeter客户端的${jmeter-home}\lib\ext下面
3. 服务端插件下载并启动
3.1 下载
GitHub - undera/perfmon-agent: Server metrics fetching agent, based on SIGAR
3.2 解压并启动
解压ServerAgent放在被压测的服务器上,
windows服务器中启动startAgent.bat,
Linux服务器启动startAgent.sh(注意赋予执行权限)
ServerAgent是用来收集服务器相关性能指标(cpu、memory、tcp等)、以及jmx等metrics信息,然后通过 TCP or UD协议来发送给jmeter。启动后,默认监听4444端口,ServerAgent是一个文本协议,可以使用任何客户端发送/接收metrics数据信息。
3.3 增加服务器配置监控
4. 查看执行结果
5. 非GUI模式测试
- 进入jemter工具的bin目录下,输入cmd进行命令行
- 编写执行测试计划
jmeter -n -t <测试JMX文件> -l <测试报告文件> -e -o <输出文件夹的路径>
**-n:**非GUI模式执行JMeter
**-t :**执行测试文件所在的位置
**-l :**指定生成测试结果的保存文件,.jtl文件格式
**-e:**测试结束后,生成测试报告
**-o:**指定测试报告的存放位置
**测试JMX文件:**测试用的.jmx文件路径
**测试报告文件:**必须是不存在的,否则会报错
**输出文件夹的路径:**手动创建存放报错的文件夹的路径,需要提前创建,每次运行前必须清空,否则会报错
jmeter -n -t D:\apache-jmeter-3.1\apache-jmeter-3.1\PDF阅读接口测试计划.jmx -l pdf请求压力测试 -e -o D:\apache-jmeter-3.1\apache-jmeter-3.1\report
3.执行测试计划
4.查看生成的测试计划
进入设置的“输出文件夹的路径”,双击index.html