基于jmeter的性能全流程测试

**01、做性能测试的步骤

1、服务器性能监控

首先要在对应服务器上面安装性能监控工具 ,比如linux系统下的服务器,可以选择nmon或者其他的监控工具,然后在jmeter模拟场景跑脚本的时候,同时启动监控工具,这样就可以获得jmeter的聚合报告和服务器的性能报告,然后分析这两份报告,得到性能测试的结果。(如果有应用服务器,还要数据库服务器,那么这几台都要监控)

常用命令:

|--------------------------------------------------|
| nmon -s 1 -c 1800 -f -m /usr/local/src/nmon/logs |

以上命令是持续监控1800s的意思,如果nmon是按照笔者前面的文档配置的,并且路径也是一样的,那么可以连接服务器以后,在服务器任意路径输入该命令都可以启动监控,启动监控以后开始同时执行jmeter脚本即可,服务器的监控报告会在/usr/local/src/nmon/logs这个路径中,是.nmon格式的文件

**02、jmeter模拟性能测试场景

一般是模拟一套业务流程,从登录>录入数据>计算报表,类似这样的场景,然后模拟多并发,持续循环该场景,测试稳定性等。

如果前面jmeter调用关联接口以及掌握,那么做只需要再掌握以下几点:

1、吞吐量控制器

当需要模拟混合业务场景的时候,需要用到吞吐量控制器,比如多并发时,一半的用户在模拟计算报表的场景,一半的用户在模拟指标试算的场景,那么用吞吐量控制器设置百分比即可,如下图:

2、设置兵法线程数,循环次数,持续时间

持续时间即,这个jmeter脚本持续循环跑多长时间停止

3、聚合报告

此处要填上聚合报告保存的路径,文件格式是.jtl,方便后续导出(建议报告存放在jmeter安装路径的bin文件夹内)

4、生成随机数

有一些场景,会遇到需要随机录入数据并保存的场景,此时也可以用函数助手,选择Random函数,输入随机范围,并点击生成随机参数,然后将对应接口的入参替换为刚刚生成的随机参数,如下图:(函数助手有随机数字还有随机字符等等,可以视自己的需要选择对应的函数)

掌握以上,基本可以做简单的压力测试了,对于模拟混合场景,一个线程里面要调用多个接口,有时候会碰到接口一直轮循,直到满足某个条件才停止的情况,轮循的接口平均间隔一秒调用一次,等等,如果遇上如上的情况,可能用到固定定时器,while循环控制器,BeanShell后置处理程序等,或者其他jmeter的元件,需要对应去学习

**03、jmeter导出html格式的聚合报告

在开始处搜索"cmd",以管理员身份打开命令操作符,然后切换到jmeter安装路径的bin文件夹中,实例如下:

|---------------------------------|
| cd/d E:\apache-jmeter-5.3\bin |

然后导出html报告(文件名和路径要与jmeter聚合报告存放的地址一致)

|----------------------------------------------------------------------|
| jmeter -g ./testreport/202007141422.jtl -o ./testreport/202007141422 |

然后进入到 .jtl所在文件路径打开如下的html文件即可看到对应报告了

**04、nmon导出服务器监控报告

1、安装nmon报告解析工具nmon_analyser_v52_1,直接解压就可以使用

2、导出nmon报告

从测试服务器上,把监控文件下载到本地,然后解压zip包,打开nmon analyser v52_1.xlsm文件(需要启用宏),点击这个按钮,选择.nmon格式的报告,然后会自动生成一个同名的.xlsx文件,该文件就是解析出来的报告了

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

相关推荐
酱学编程10 小时前
java中的单元测试的使用以及原理
java·单元测试·log4j
00Allen0010 小时前
Java复习第四天
算法·leetcode·职场和发展
llp111016 小时前
高并发压力测试
java·开发语言·压力测试
无限码力17 小时前
路灯照明问题
数据结构·算法·华为od·职场和发展·华为ode卷
天堂的恶魔94618 小时前
软件测试 —— 性能测试(jmeter)
jmeter
Monee..18 小时前
【jmeter】下载及使用教程【mac】
jmeter
Allen Bright18 小时前
使用 JMeter 的 Autostop Listener 插件:自动化性能测试的守护者
运维·jmeter·自动化
言之。20 小时前
【面试】Java 记录一次面试过程 三年工作经验
java·面试·职场和发展
Tiger Z21 小时前
R 语言科研绘图 --- 散点图-汇总
人工智能·程序人生·r语言·贴图
小孟Java攻城狮1 天前
leetcode-不同路径问题
算法·leetcode·职场和发展