基于JMeter开展性能测试(插件、监控、分布式压测)!

2022-09-28 15:47:34 浏览数 (1)

一、环境搭建

1、安装java

安装jdk1.8:默认安装,配置环境变量,新建系统变量JAVA_HOME 值:jdk的安装路径

在path变量中新增两个值:;%JAVA_HOME%bin;%JAVA_HOME%jrebin;

验证java安装成功

2、安装jmeter,解压jmeter压缩包到指定路径

双击jemeter.bat打开jmeter

二、创建线程组执行测试

  1. 修改语言为中文

2、添加一个线程组,后续我们要添加的请求都是要放在线程组下的。线程组,也是进行性能测的基本组成单位。

3、为线程组添加请求

4、添加一个查看结果树,用来观察测试结果

5、添加一个聚合报告,聚合报告中,可以看到当前线程组执行的汇总情况

Label :当前测试的各个请求

Average:当前请求平均响应时间

Median:当前请求中位值,排在50%个请求的响应时间

90%:当前请求中位值,排在90%个请求的响应时间

95%:当前请求中位值,排在95%个请求的响应时间

99% :当前请求中位值,排在99%个请求的响应时间

Min : 最小响应时间

MAX:最大响应时间

Error:错误率

Throughput:tps,每秒事务处理数

Recive:接收到的字节

Sent:发送的字节

三、性能测试中需要重点关注的指标

Ø 响应时间

Ø 并发用户数

Ø 吞吐量

Ø TPS(每秒事物处理数)

Ø 资源利用率(cpu、内存)

四、jmeter性能测试常用的插件

  1. 下载jmeter-plugins-manager-1.4.jar,然后将该文件放到..apache-jmeter-5.0libext路径下,然后重启jmeter

重启后,就可以使用第三方插件了

常用的插件如下:

Custom Thread Groups

该插件组可以提供额外模式的线程组,比如阶梯增加的线程组,做负载测试和压力测试是不错的选择。

PerfMon

该插件可以监听服务器的硬件性能, 包括cpu、内存、网络情况等,但该插件需要配合服务器端的ServerAgent使用。

3 Basic Graphs

该插件组中的插件可以将测试数据生成对应的图形。

Active Threads Over Time

Response Times Over Time

Transactions per Second

Additonal Graphs

监听服务器的性能,首先添加PrefMon监听器

然后去服务器里打开监听用的软件。

Concurrency Thread Group

利用该线程组可以实现阶梯增压。

登录场景下的压力测试

五、jmeter分布式环境搭建

  1. 调度机和slave机要在同一个局域网下。
  2. 在调度机和slave机上都要安装相同版本的java和相同版本的jmeter 建议,直接将调度机上配置好的jmeter复制到slave机上
  3. 修改调度机的配置文件jmeter.properties(该文件在jmeter安装目录的bin目录下) remote_hosts=Slave机器IP:端口(多台Slave机器则用英文逗号隔开) server.rmi.ssl.disable=true mode=Standard(开启标准模式可查看日志)
  1. 配置slave机 配置slave机,修改jmeter.properties: server_port=端口 server.rmi.port=端口 server.rmi.ssl.disable=true 执行测试 测试之前,要开启所有的slave机 在jmeter路径的bin目录下,执行下列命名 ./jmeter-server -Djava.rmi.server.hostname=当前slave机的IP地址

六、命令行执行性能测试

命令:

代码语言:javascript复制
jmeter -n -t 待测脚本.jmx -R slave机IP,slave2IP -l 测试结果.jtl

    -n:使用命令行模式运行

    -t:指定要运行的jmx脚本

    -R:指定使用那些slave节点压测

    -l:保存测试结果数据到指定文件
 

七、职业生涯规划之路

0 人点赞