Apache JMeter 3.1压力测试监控服务器数据(cpu、内存、磁盘io等)

Apache JMeter 3.1压力测试

  • [Apache JMeter 3.1压力测试监控cpu、内存情况](#Apache JMeter 3.1压力测试监控cpu、内存情况)
    • [1.下载Apache JMeter 3.1](#1.下载Apache JMeter 3.1)
      • [1.1 添加线程组](#1.1 添加线程组)
      • [1.2 添加http请求](#1.2 添加http请求)
      • [1.3 增加http请求头设置](#1.3 增加http请求头设置)
      • [1.4 添加csv配置](#1.4 添加csv配置)
      • [1.5 添加测试结果监控配置](#1.5 添加测试结果监控配置)
    • [2. 监控插件下载](#2. 监控插件下载)
    • [3. 服务端插件下载并启动](#3. 服务端插件下载并启动)
      • [3.1 下载](#3.1 下载)
      • [3.2 解压并启动](#3.2 解压并启动)
      • [3.3 增加服务器配置监控](#3.3 增加服务器配置监控)
    • [4. 查看执行结果](#4. 查看执行结果)
    • [5. 非GUI模式测试](#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模式测试

  1. 进入jemter工具的bin目录下,输入cmd进行命令行
  1. 编写执行测试计划
xml 复制代码
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

相关推荐
_可乐无糖7 小时前
jmeter得到的文档数据处理
jmeter·自动化
职教育人7 小时前
金砖软件测试赛项之Jmeter如何录制脚本!
java·测试工具·jmeter·性能优化·集成测试
一瓢一瓢的饮 alanchan7 小时前
【运维监控】influxdb 2.0 + grafana 11 监控jmeter 5.6.3 性能指标(2)
运维·jmeter·grafana·监控·influxdb·运维监控
XXX-177 小时前
8.JMeter+Ant(基于工具的实现接口自动化,命令行方式)
软件测试·jmeter·接口测试
IT-陈7 小时前
Jmeter 线程组解析
jmeter
陈奕迅本讯7 小时前
jmeter
jmeter
落叶花开又一年7 小时前
JMeter
jmeter
qq_4337169517 小时前
UI自动化测试的边界怎么定义?
自动化测试·软件测试·测试工具·jmeter·ui·接口测试·postman
Apache Flink1 天前
Apache Flink 流批融合技术介绍
人工智能·flink·apache
测试老哥1 天前
功能测试干了三年,快要废了。。。
自动化测试·软件测试·python·功能测试·面试·职场和发展·压力测试