news 2026/10/10 12:31:27

基于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进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/8 17:22:26

百度网盘提取码智能查询工具:告别繁琐搜索的终极方案

百度网盘提取码智能查询工具:告别繁琐搜索的终极方案 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘分享链接的提取码而烦恼吗?当你满怀期待地打开一个资源分享链接,却发现需…

作者头像 李华
网站建设 2026/10/9 11:29:17

Launcher3深度定制指南:打造个性化Android桌面体验

Launcher3深度定制指南:打造个性化Android桌面体验 【免费下载链接】Launcher3 The Launcher3 fork known as "Rootless Pixel Launcher" 项目地址: https://gitcode.com/gh_mirrors/la/Launcher3 Launcher3是一款备受推崇的开源Android启动器项目…

作者头像 李华
网站建设 2026/10/10 5:24:39

DuckDB Java集成实战指南:3分钟配置嵌入式OLAP数据库

DuckDB Java集成实战指南:3分钟配置嵌入式OLAP数据库 【免费下载链接】duckdb DuckDB is an in-process SQL OLAP Database Management System 项目地址: https://gitcode.com/GitHub_Trending/du/duckdb 副标题:零基础入门轻量级数据分析&#x…

作者头像 李华
网站建设 2026/10/9 1:57:43

MaxScript 实现多边形层级切换按钮

大家好!欢迎来到这个 MaxScript 编程教程。今天我们将学习如何创建一个实用的 3ds Max 工具——一个智能的层级切换按钮。这个工具的核心功能是通过一个 checkbutton(复选框按钮)实现可编辑多边形对象的多边形子层级与对象层级的快速切换。 在三维建模工作中,频繁地在不同…

作者头像 李华
网站建设 2026/10/10 1:53:48

NideShop电商系统:打造高效在线商城的终极Node.js解决方案

在数字化经济时代,企业面临着如何快速搭建功能完善、性能稳定的在线商城的挑战。传统电商平台开发周期长、成本高、定制性差,让许多中小企业望而却步。NideShop电商系统正是为解决这一痛点而生,为开发者提供了一个基于Node.js的完整电商解决方…

作者头像 李华