news 2025/12/22 9:58:52

基于jmeter的性能全流程测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于jmeter的性能全流程测试

做性能测试的步骤

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格式的文件

jmeter模拟性能测试场景

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

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

1、吞吐量控制器

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

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

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

3、聚合报告

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

4、生成随机数

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

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

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文件即可看到对应报告了

nmon导出服务器监控报告

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

链接:https://pan.baidu.com/s/1Qj4Oesl6WoFoRDh7gd5NDg

提取码:3ip0

2、导出nmon报告

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

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2025/12/20 12:53:05

构建企业级容器管理平台自动化部署的完整技术方案

构建企业级容器管理平台自动化部署的完整技术方案 【免费下载链接】portainer Portainer: 是一个开源的轻量级容器管理 UI,用于管理 Docker 和 Kubernetes 集群。它可以帮助用户轻松地部署、管理和监控容器,适合用于运维和开发团队。特点包括易于使用、支…

作者头像 李华
网站建设 2025/12/20 22:20:31

基于三有源桥的模型预测控制仿真,可以独立控制输出侧两个端口的电压或者电流,动态响应快,也可以扩...

基于三有源桥的模型预测控制仿真,可以独立控制输出侧两个端口的电压或者电流,动态响应快,也可以扩展至四有源桥电路。最近在研究基于三有源桥的模型预测控制(MPC)仿真,发现这东西挺有意思的。三有源桥电路结…

作者头像 李华
网站建设 2025/12/22 0:04:16

SOLID软件设计原则 解析

前言:在平时coding过程中,大部分程序员可能把更多精力和时间花在功能的实现和完成上面,对于代码的可读性、可读性及可扩展性没有过多的关注,这可能会造成后期功能扩展困难、新人无法理解等问题。这里介绍一些软件代码设计原则&…

作者头像 李华
网站建设 2025/12/22 3:33:28

游戏平台图标资源终极指南:150+高质量平台标识完整解析

游戏平台图标资源终极指南:150高质量平台标识完整解析 【免费下载链接】romm A beautiful, powerful, self-hosted rom manager 项目地址: https://gitcode.com/GitHub_Trending/rom/romm 在构建现代化的游戏管理平台时,如何为用户提供直观、美观…

作者头像 李华
网站建设 2025/12/22 3:32:57

FunASR流式语音识别终极指南:从零实现600ms超低延迟实时转写

还在为语音识别的高延迟而烦恼吗?想要打造真正实时的语音交互应用却不知从何下手?FunASR作为达摩院开源的全链路语音识别工具包,其paraformer_streaming模型能够轻松实现600ms超低延迟的流式识别!🎯 【免费下载链接】F…

作者头像 李华