13年测试老鸟,性能测试流程总结汇总,详细测试步骤一篇概全...
目录导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结尾部小惊喜前言1、性能需求分析性能需求分析是整个性能测试工作开展的基础如果连性能的需求都没弄清楚后面的性能测试执行其实是没有任何意义的而且性能需求分析做的好不好直接影响到性能测试的结果。一些性能测试人员常犯的错误就是测试一开始就直接用工具对系统进行加压没有弄清楚性能测试的目的稀里糊涂做完了以后也不知道结果是否满足性能需求。市面上的书籍也大都是直接讲性能测试工具如LRjmeter如何使用导致很多新手一提到性能测试就直接拿工具来进行录制回放使得很多人认为会使用性能测试工具就等于会性能测试了殊不知工具其实只是性能测试过程中很小的一部分。在需求分析阶段测试人员需要与项目相关的人员进行沟通收集各种项目资料对系统进行分析建立性能测试数据模型并将其转化为可衡量的具体性能指标确认测试的目标。所以性能测试需求分析过程是繁杂的需要测试人员有深厚的性能理论知识除此之外还需要懂一些数学建模的知识来帮助我们建立性能测试模型。首先让我们来看看通过性能需求分析我们需要得出哪些结论或目标明确倒底要不要做性能测试性能测试的目的是什么明确被测系统是什么被测试系统的相关技术信息如架构、平台、协议等明确被测系统的基本业务、关键业务用户行为明确性能测试点是什么哪些需要测为什么哪些不需要测又是为什么明确被测系统未来的业务拓展规划以及性能需求明确性能测试策略即应该怎么测试明确性能测试的指标知道测试出来的结果怎么算通过其次需求分析阶段我们可以从以下几个方面入手1系统信息调研指对被测试系统进行分析需要对其有全面的了解和认识这是我们做好性能测试的前提而且在后续进行性能分析和调优时将会大有用处试想如果连系统的架构、协议都不了解我们如何进行准确的性能测试如果进行性能分析与调优需要分析的系统信息如下包括但不仅限于如下这些2业务信息调研指对被测试的业务进行分析通过对业务的分析和了解方便我们后续进行性能测试场景的确定以及性能测试指标的确定。需要分析的业务信息如下包括但不仅限于如下这些3性能需求评估在实施性能测试之前我们需要对被测系统做相应的评估主要目的是明确是否需要做性能测试。如果确定需要做性能测试需要进一步确立性能测试点和指标明确该测什么、性能指标是多少测试通过or不通过的标准性能指标也会根据情况评估要求被测系统能满足将来一定时间段的业务压力。判断是否进行性能测试主要从下面两个方面进行思考业务角度系统是公司内部 or 对外系统使用的人数的多少如果一个系统上线后基本没几个人使用无论系统多大设计多么复杂并发性的性能测试都是没必要的前期可以否决。当然除非在功能测试阶段发现非常明显的性能问题使得用户体验较差的此时可进行性能测试来排查问题。系统角度系统又可以从以下3个方面进行分析a系统架构如果一个系统采用的框架是老的系统框架通常大公司都有自己的统一框架只是在此框架上增加一些应用其实是没有必要做性能测试因为老框架的使用肯定是经过了验证的。如果一个系统采用的是一种新的框架可以考虑做性能测试。b数据库要求很多情况下性能测试是大数据量的并发访问、修改数据库而瓶颈在于连接数据库池的数量而非数据库本身的负载、吞吐能力。这时可以结合DBA的建议来决定是否来做性能测试。c系统特殊要求从实时性角度来分析某些系统对响应时间要求比较比如证券系统系统的快慢直接影响客户的收益这种情况就有作并发测试的必要在大并发量的场景下查看这个功能的响应时间。从大数据量上传下载角度分析某些系统经常需要进行较大数据量的上传和下载操作虽然此种操作使用的人数不会太多但是也有必要进行性能测试确定系统能处理的最大容量如果超过这个容量时系统需要进行相关控制避免由于不人工误操作导致系统内存溢出或崩溃。4确定性能测试点在上面第3点中我们简单分析了如何确定一个系统是否需要做性能测试。下面简单总结下如果一个系统确定要做性能测试我们如何确定被测系统的性能测试点我们可以从下面几个方面进行分析关键业务确定被测项目是否属于关键业务有哪些主要的业务逻辑点特别是跟交易相关的功能点。例如转账扣款等接口。如果项目或功能点不属于关键业务或关键业务点则可转入下面。日请求量确定被测项目各功能点的日请求量可以统计不同时间粒度下的请求量如小时日周月。如果日请求量很高系统压力很大而且又是关键业务该项目需要做性能测试而且关键业务点可以被确定为性能点。逻辑复杂度判定被测项目各功能点的逻辑复杂度。如果一个主要业务的日请求量不高但是逻辑很复杂则也需要通过性能测试。原因是在分布式方式的调用中当某一个环节响应较慢就会影响到其它环节造成雪崩效应。运营推广活动根据运营的推广计划来判定待测系统未来的压力。未雨绸缪、防患于未然、降低运营风险是性能测试的主要目标。被测系统的性能不仅能满足当前压力更需要满足未来一定时间段内的压力。因此事先了解运营推广计划对性能点的制定有很大的作用。例如运营计划做活动要求系统每天能支撑多少 PV、多少 UV或者一个季度后需要能支撑多大的访问量等等数据。当新项目或功能点属于运营重点推广计划范畴之内则该项目或功能点也需要做性能测试。以上 4 点是相辅相成、环环相扣的。在实际工作中应该具体问题具体分析。例如当一个功能点不满足以上 4 点但又属于资源高消耗内存、CPU也可列入性能测试点行列。5确定性能指标性能需求分析一个很重要的目标就是需要确定后期性能分析用的性能指标性能指标有很多可以根据具体项目选取和设定而具体的指标值则需要根据业务特点进行设定本文不详细进行阐述后续可考虑就此单独写一篇。2、性能测试准备1测试环境准备a系统运行环境这个通常就是我们的测试环境有些时候需求比较多做性能测试担心把环境搞跨了影响其它的功能测试可能需要重新搭建一套专门用来做性能测试的环境。b执行机环境这个就是用来生成负载的执行机通常需要在物理机上运行而物理机又是稀缺资源所以我们每次做性能测试都需要提前准备好执行机环境。2测试场景设计根据性能需求分析来设计符合用户使用习惯的场景场景设计的好不好直接影响到性能测试的效果。3性能工具准备a负载工具根据需求分析和系统特点选择合适的负载工具比如LR、Jmeter或galting等b监控工具准备性能测试时的服务器资源、JVM、数据库监控工具以便进行后续的性能测试分析与调优。4测试脚本准备如果性能测试工具不能满足被测系统的要求或只能满足部分要求时需要我们自己开发脚本配合工具进行性能测试。5测试数据准备a负载测试数据并发测试时需要多少数据比如登录场景bDB数据量大小为了尽量符合生产场景需要模拟线上大量数据情况那么要往数据库里提前插入一定的数据量。这可能需要花费一些时间特点是关联系统较多逻辑复杂的业务可能同时涉及多张表。6其它如果需要其它其它关联系统或专业人士如DBA配合的也需要提前进行沟通。3、性能测试执行1人工边执行边分析通常我们做性能测试都是人工执行并随时观察系统运行的情况、资源的使用率等指标。性能测试的吸引力之一就在于它的不可预知性。当我们在做性能测试的时候遇到跟预期不符的情况很正常这个时候需要冷静的分析。但这个过程可能会很慢长需要不断的调整系统配置或程序代码来定位问题耗时耗人力。特别是在当前敏捷开发模式比较流行的大环境下版本发布非常频繁且版本周期短通常1~2周一个版本没有那么长的时间来做性能测试。2无人值守执行性能测试无人值守是最理想化的目标目前我们也朝着这个方向努力。无人值守不是说没有人力介入而是把人为的分析和执行过程分离执行过程只是机器服从指令的运行而已。通常测试环境在白天比较繁忙出现性能问题及定位难度较大且会影响功能测试。所以一般性能测试最好在晚上或周末进行在相对较安静的条件有利于测试结果的稳定性。这种方法也相对比较适合敏捷的模式不需要人工一直守着。只需要在拿到结果后进行分析就好了。同进这种方式对测试人员能力的要求比较高需要我们能进行自动化的收集各种监控数据、生成报表便于后续分析。4、结果分析与调优关于性能分析与调优这是一个比较大的话题后续会单独进行总结和分析。5、测试报告与总结性能测试报告是性能测试的里程碑通过报告能展示出性能测试的最终成果展示系统性能是否符合需求是否有性能隐患。性能测试报告中需要阐明性能测试目标、性能测试环境、性能测试数据构造规则、性能测试策略、性能测试结果、性能测试调优说明、性能测试过程中遇到的问题和解决办法等。性能测试工程师完成该次性能测试后需要将测试结果进行备案并做为下次性能测试的基线标准具体包括性能测试结果数据、性能测试瓶颈和调优方案等。同时需要将测试过程中遇到的问题包括代码瓶颈、配置项问题、数据问题和沟通问题以及解决办法或解决方案进行知识沉淀。完整版企业级性能测试实战速通Jmeter性能测试到分布式集群压测教程下面是我整理的2026年最全的软件测试工程师学习知识架构体系图一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结尾部小惊喜人生最珍贵的不是终点站的奖杯而是追梦路上那个永不放弃的自己。当你觉得撑不住时请记住每个伟大的故事都写在最艰难的章节之后。你的坚持正在创造别人眼中的奇迹别被暂时的风雨模糊了双眼那些让你流泪的磨练正在雕刻更璀璨的未来。当别人选择放弃时你的坚持就是胜利的宣言。向前奔跑吧整个世界都在等待你的光芒绽放

相关新闻

VS code 加 C++

VS code 加 C++

第一步:安装编译器 (MinGW-w64) 由于 VS Code 不带编译器,我们需要手动安装它。 下载 MSYS2:前往 msys2.org 下载并运行安装程序。(一般下载红线版本) 安装步骤:一路点击“下一步”,直到安装完…

2026/7/2 22:24:57 阅读更多 →
模拟传动系统工况

模拟传动系统工况

粒子群变速器速比优化PSO凌晨三点盯着屏幕上的传动效率曲线,咖啡杯底积了层褐色残渣。做变速器设计的朋友突然从微信弹出:「传统遍历法试参数快把我逼疯了,听说粒子群能整活?」我对着对话框苦笑——这年头连机械工程师都得会点智能…

2026/5/17 9:24:05 阅读更多 →
「UG/NX」NX二次开发 之 NX外挂运行错误 signal 11

「UG/NX」NX二次开发 之 NX外挂运行错误 signal 11

✨博客主页 何曾参静谧的博客(✅关注、👍点赞、⭐收藏、🎠转发) 📚全部专栏(专栏会有变化,以最新发布为准) 「Win」Windows程序设计 「IDE」集成开发环境 「定制」定制开发集合 「C/C++」C/C++程序设计 「DSA」数据结构与算法 「UG/NX」NX二次开发

2026/7/3 2:13:35 阅读更多 →

最新新闻

机器学习可解释性实战:从监管合规到业务落地的完整工程指南

机器学习可解释性实战:从监管合规到业务落地的完整工程指南

1. 项目概述:为什么“模型能解释”比“模型很准”更难搞你训练出一个准确率98.7%的信贷风控模型,银行却拒绝上线——不是因为不准,而是因为当它拒绝一位申请人时,业务经理问:“为什么?”你答不上来。这场景…

2026/7/4 15:48:32 阅读更多 →
时序模型基础与实战:从ARIMA到SARIMA应用指南

时序模型基础与实战:从ARIMA到SARIMA应用指南

1. 时序模型基础认知 时序模型(Time Series Model)是数据分析领域的经典工具,专门用于处理按时间顺序排列的观测值集合。这类数据在金融、气象、工业等领域无处不在,比如股票价格逐日波动、城市气温每小时变化、工厂设备每分钟传感…

2026/7/4 15:46:32 阅读更多 →
M24C04-R与MK64FN1M0VDC12的嵌入式存储方案实践

M24C04-R与MK64FN1M0VDC12的嵌入式存储方案实践

1. 为什么选择M24C04-R与MK64FN1M0VDC12组合 在嵌入式系统中,非易失性数据存储是个永恒的话题。我最近在一个工业控制项目中,需要存储设备参数和运行日志,经过多次对比测试,最终选择了M24C04-R EEPROM与MK64FN1M0VDC12 MCU的组合方…

2026/7/4 15:44:31 阅读更多 →
Solo Practitioner的机器学习生存指南:无基建、无团队、无标准流程下的实战路径

Solo Practitioner的机器学习生存指南:无基建、无团队、无标准流程下的实战路径

1. 这不是一本“机器学习入门书”,而是一份深夜调试模型时你真正需要的生存手记 “Building ML in the Dark”——这个标题我第一次看到就停顿了三秒。它没说“从零开始”“手把手教学”“保姆级教程”,而是直白地用了“in the Dark”(在黑暗…

2026/7/4 15:44:31 阅读更多 →
基于YOLOv11的教师行为实时检测系统开发

基于YOLOv11的教师行为实时检测系统开发

1. 项目概述 在智慧教育快速发展的今天,教师行为分析已成为提升教学质量的关键技术。传统的人工观察方式不仅效率低下,还容易受到主观判断的影响。我们基于最新的YOLOv11算法,开发了一套能够实时识别6种典型教师行为的智能检测系统。 这套系…

2026/7/4 15:44:31 阅读更多 →
Win11Debloat:3分钟彻底清理Windows臃肿,让你的电脑重获新生

Win11Debloat:3分钟彻底清理Windows臃肿,让你的电脑重获新生

Win11Debloat:3分钟彻底清理Windows臃肿,让你的电脑重获新生 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to…

2026/7/4 15:44:31 阅读更多 →

日新闻

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 发布:关键安全修复版本,多项问题得到解决

Memcached 1.6.43 正式发布,这是一个关键的安全修复版本,修复了多个方面的问题,还对部分功能进行了优化。 安全修复亮点 此次发布在安全修复上表现突出。binprot 避免了项目引用计数溢出,mcmc 因安全问题提升了上游版本号&#xf…

2026/7/4 0:04:29 阅读更多 →
终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案

终极指南:使用HMCL启动器跨平台畅玩Minecraft的完整解决方案 【免费下载链接】HMCL A Minecraft Launcher which is multi-functional, cross-platform and popular 项目地址: https://gitcode.com/gh_mirrors/hm/HMCL HMCL(Hello Minecraft! Lau…

2026/7/4 0:06:29 阅读更多 →
KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

KMX63与PIC18F66K40在嵌入式HMI中的硬件协同与低功耗设计

1. KMX63与PIC18F66K40的硬件协同架构解析KMX63作为一款三轴加速度计和磁力计组合传感器,与PIC18F66K40微控制器的搭配堪称嵌入式HMI开发的黄金组合。这套硬件组合的核心优势在于KMX63提供的高精度运动感知能力与PIC18F66K40强大的信号处理能力形成了完美互补。KMX6…

2026/7/4 0:06:29 阅读更多 →

周新闻

月新闻