文章目录
前言
jmeter常用技能
一、安装
1、配置jdk环境
安装jdk1.N的版本
******* 18.N的版本不适用jmeter****
查看java版本
2、下载地址(选择最新版本即可)
https://jmeter.apache.org/download_jmeter.cgi
二、本地启动Jmeter
win 打开bin目录,点击jmeter.bat
mac 打开bin目录,点击jmeter
1、使用
- 选中测试计划右键new(添加)—》线程(用户)----》线程组,进行线程组的添加(在线用户数)
- 选中线程组右键—添加“用户自定义的变量”、“HTTP信息头管理器”、“创建简单控制器”
- 在简单控制器-右键—》取样器—》http请求
- 创建“查看结果树”
- 关注下线程数&异常线程数
二、远程运行
2.1 简单概述
- 是用一台JMeter控制机(Master)控制远程的多台机器(Slave)来产生负载;
- Master与Slave的通信是通过RMI方式完成;
- Slave上运行Agent程序(启动命名为%JAVA_HOME%\bin\jmeter-server.bat);
- Master上运行远程负载机。
2.2 详细说明
- 在%JAVA_HOME%\bin下找到ApacheJMeter.jar与jmeter-server.bat;
- 运行jmeter-server.bat来启动Agent,Agent程序由ApacheJMeter.jar中的程序来实现;
- 在连接远程远程机器之前,先要进行配置,告诉JMeter要连接哪些机器;
- 可打开jmeter.properties,搜索remote_hosts,找到如下内容: 关键字 remote_hosts
- 在remote_hosts=后加上远程JMeter负载机的IP即可,多个IP用逗号隔开(重启JMeter才会生效该配置文件);
- 远程运行的脚本若有参数化文件,脚本有依赖包时,需要把这些参数文件、依赖包拷贝到远程机器上。
三、非GUI运行
3.1 概述
- 非GUI方式运行时没有JMeter界面,在命令行窗口通过命令实现;
- 使用此运行方式的原因是:
因为JMeter可视化界面及监听器动态展示结果比较消耗负载机资源,
在打并发情况下GUI方式会导致负载机资源紧张,会对性能测试结果造成影响。
3.2 运行方式
# 1:
java -jar %JAVA_HOME%\bin\ApacheJMeter.jar -n -t %JAVA_HOME%\script\xx.jmx -r -l result.jtl
# 2:
%JAVA_HOME%\bin\jmeter -n -t %JAVA_HOME%\script\xx.jmx -l %JAVA_HOME%\result\result.jtl
3.3 参数信息
-n 非GUI方式运行
-t 指定运行的测试脚本地址和名称
-h 查看帮助
-v 查看版本
-p 指定读取JMeter属性文件
-l 记录测试结果到文件,指定文件地址和名称
-s 以服务器方式运行,即远程方式
-H 设置代理,一般写代理IP
-P 设置代理端口
-u 代理账号
-a 代理口令
-J 定义JMeter属性 ,等同jmeter.properties
-G 定义JMeter全局属性 ,等同Global.properties
-D 定义系统属性,指定加载系统属性文件
-L 定义JMeter日志级别
-r 开启远程负载机 ,机器列表在jmeter.properties中指定
-R 开启远程负载机,可指定负载机IP
-d 指定JMeter Home目录
-X 停止远程执行
四、性能参数配置及测试监听
1 性能参数配置
1.1 为何要进行性能参数配置?
- 运行场景时,使用JMeter GUI方式会比较占用资源;
- 但其实两种运行方式都会占用资源;
- 所以可用其他方法提高负载机性能;
1.2 调整分析
- 因为JMeter为java开发,所以我们可以调整其性能,让其在java虚拟机上运行起来更流畅。
1.3 调整策略
- 打开%JMETER_HOME%\bin\jmeter.bat,找到如下类似内容:
- 参数说明
set HEAP 设置JVM堆大小,-Xms为初始堆大小,-Xmx为最大堆大小,
set DUMP 当内存溢出时,DUMP的内存信息;当JVM崩溃后便于查看堆信息进行问题分析
2 测试监听
- 监听器承担监听任务,可统计吞吐量、响应时间等指标。
2.1 JMeter监听器
从软件上看,JMeter监听器有很多,后续内容详细再介绍。本文介绍长时间执行测试计划的两个监听器Summary Report和Aggregate Report 。
2.1.1 Summary Report
- 如图,是表格形式,就是汇总报告:
- 表格部分字段说明:
2.2 开源监听插件
JMeter Plugins增加众多的监听器,图形化丰富,功能强大;
可监听服务器硬件性能(CPU、内存等);