8年经验之谈!分享一次性能测试过程,5个步骤直接起飞!

这篇具有很好参考价值的文章主要介绍了8年经验之谈!分享一次性能测试过程,5个步骤直接起飞!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在企业中完成性能测试项目是一个挑战性强、技术含量高的任务。本文将分享一个公司完成高性能游戏系统的性能测试过程,展示如何完成一次成功的性能测试项目

项目背景:这是一家游戏公司,推出了一款新的游戏软件,系统要求高性能、高并发、高可用,为确保用户体验和游戏体验,公司决定在正式上线前对系统进行性能测试.

第一步:

定义测试目标

在项目启动之初,团队首先进入到定义测试目标的阶段,据此来确定测试范围、测试手段和测试工具。此阶段重要性不言而喻,目标不明,则结果无从说起。

通过团队讨论,确立了以下的目标:

  • 针对目标场景下的指标进行基准测试,并得到高可用性的性能数据。
  • 评测流量下的异常场景,确定系统多少负载能力及扩展架构。
  • 通过性能测试结果来查找和定位系统的瓶颈,并通过在代码层面进行优化提升系统吞吐量及性能表现。
  • 揭示用户最有可能使用系统的行径模式及环境和业务决策。

第二步:

测试计划调研

按照测试目标,测试团队进行测试计划调研。我们将基于应用程序不断压测及观察应用程序的运行状况来判定应用程序的瓶颈,并且对观察结果进行分析和总结,为分析改善提供有力数据支撑。

针对要测的业务模式,我们设计出了4个具有典型意义的场景:

  • 500-10000个并发用户请求。
  • 负载测试,根据实际场景数据模拟用户操作习惯,
  • 容量测试,以应用程序在各个方面的性能和资源限制,并确定系统配置的最大极限。
  • 24小时稳定性测试,保证系统在持续24小时真实环境下的高可用性。

第三步:

执行测试计划

通过测试计划调研,我们进行了测试项目将近1个月的时间安排到执行。我们使用了多种工具,应用于不同测试领域,例如LoadRunner、JMeter、Appdynamics、Keynote、Fiddler、Wireshark、Flume等等。在这里不展开程序设计中复杂的使用。

下面是使用JMeter测试的例子,它是一款开源的压力测试工具。它可以对不同种类的服务器、网络协议进行测试。

下面是相关的测试结果:

基准测试:

将系统在低负载环境下按照预定的标准进行性能测试,例如单用户响应时间,服务器负载以及数据库处理能力都是很好的评估指标。测试结果如下所示:

测试指标 结果
每秒事务处理能力 7500
平均响应时间 0.3秒
CPU使用率 70%
内存使用率 60%

 

负载测试:

使用模拟混合负载的测试,在同一时刻模拟大量高并发用户同时访问系统,测试结果如下所示:

测试指标 结果
每秒事务处理能力 13800
平均响应时间 2秒
最大响应时间 5秒
CPU使用率 85%
内存使用率 80%

 

容量测试:

容量测试中使用jMeter模拟出可实现的并发用户访问系统,测试结果如下所示:

测试指标 结果
每秒事务处理能力 28000
平均响应时间 7秒
最大响应时间 15秒
CPU使用率 99%
内存使用率 95%

 

稳定性测试:

保证系统在持续24小时真实环境下的高可用性,测试结果如下所示:

测试指标 结果
24小时无故障时间
CPU使用率 85%
内存使用率 92%

 

第四步:

测试结果及异常分析

通过以上测试,团队分析性能数据,据此针对性进行优化, 例如通过清理CPU 日志数据库存储调优等方式进行优化,以提高系统稳定性,优化结果如下所示:

测试指标 优化前 优化后
每秒事务处理能力 28000 45000
平均响应时间 6秒 0.2秒
最大响应时间 13秒 1秒
CPU使用率 99% 70%
内存使用率 97% 80%

根据性能测试结果,我们发现系统在负载和容量测试场景下呈现出问题

负载测试:

我们注意到在高负荷下,响应时间开始大幅上升并且响应时间的标准差开始下降。这表明系统正在达到其极限,并可能无法容忍更多的用户。

容量测试:

当我们在大负载下执行测试时,发现系统性能发生了很大的下降。我们发现jMeter本身不能支持如此大量的并发用户访问,我们使用了不同的工具来验证测试结果,我们发现系统极限在28000并发访问量左右。该结果使我们意识到系统还需要在某些方面进一步优化。

第五步:

得出结论——性能测试报告

通过各种性能测试方式,团队得出了一个详细的测试报告。该报告概括了测试结果及其优化方案,并包括了性能测试的详细数据、结论和建议,以便游戏开发团队根据测试结果决定是否更改系统架构、代码或参数。最终,该游戏系统在经过不断测试和改进后成功上线,并获得了良好的用户体验。

总结:

该高性能游戏系统性能测试案例中,测试团队首先制定了测试目标,确定测试计划,然后采用不同的测试工具进行测试,为改进系统性能提供了数据支持,并得出了详细的测试报告。测试结果中的异常分析让工程团队能够针对具体的问题进行精细的优化。这一成功性能测试的案例展示出一个优秀公司如何在高压力的环境下验证性能、保证高可用性和安全性,实现巨大价值的过程。文章来源地址https://www.toymoban.com/news/detail-746995.html

最后如果你想学习软件测试和需要软件测试资料,欢迎加入笔者的交流群:320231853,里面可以免费领取软件测试+自动化测试资料+软件测试面试宝典+简历模版+实战项目+面试刷题工具和大佬答疑解惑,我们一起交流一起学习!

到了这里,关于8年经验之谈!分享一次性能测试过程,5个步骤直接起飞!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 字节8年经验之谈 —— 详解python自动化单元测试!

    说实话,除了测试要求,我实在不知道写单元测试有什么意义,一个函数50行代码,有多种参数组合,为了测试这些条件,需要编写测试用例,写完的测试用例比需要测试的函数还长。也就是说,除了写函数,还要写测试用例,增加的工作量不是一点点。特别是,需求经常变

    2024年01月22日
    浏览(38)
  • 5年测试在职经验之谈:2年功能测试、3年自动化测试,从入门到不可自拔...

    毕业3年了,学的是环境工程专业, 毕业后零基础转行做软件测试。 已近从事测试行业8年了,自己也从事过2年的手工测试,从事期间越来越觉得如果一直在手工测试的道路上前进,并不会有很大的发展,所以通过自己的努力,早几年已经成功的转入自动化测试的方向 ,又过

    2024年02月10日
    浏览(32)
  • 8年经验之谈 —— Android自动化测试中如何处理各种弹窗?

    在UI自动化测试中弹窗是影响自动化用例稳定性的一大因素,如何方便快捷的处理各种情况下的弹窗,是搞UI自动化测试必须要面临的问题. 安装APP时的系统弹窗 此类弹窗一般有两种,一种是自动化测试框初始化本身也需要安装一些APP,比如uiautomator2会安装atx-agent、com.github.

    2024年02月11日
    浏览(29)
  • 【控制项目风险经验之谈】

    项目风险是指在项目执行期间可能会影响项目目标、进度、成本或质量的不确定因素。在项目管理中,项目风险是不可避免的,因此需要采取措施来控制和管理项目风险。本篇文章将详细介绍如何控制项目风险的经验之谈。 一、确定风险管理计划 在项目启动阶段,应该制定

    2024年02月14日
    浏览(24)
  • 网络安全—入职大厂经验之谈

    大三想去实习,趁现在该干什么才能去大厂实习呢?想做一些事丰富一下自己的简历,只有打ctf?还是挖洞?非常迷茫。 或者入职转行网络安全行业应该怎么做?对于接下来的职业规划学习计划有什么打算? 1. 你的专业知识一定要学得扎实。这不是指要你考试考多高的分,

    2024年02月16日
    浏览(29)
  • 9大Python常用技巧 经验之谈

    整理用户输入的问题在编程过程中极为常见。通常情况下,将字符转换为小写或大写就够了,有时你可以使用正则表达式模块「 Regex 」完成这项工作。但是如果问题很复杂,可能有更好的方法来解决: 在本例中,你可以看到空格符「 n 」和「 t 」都被替换成了单个空格,

    2024年02月03日
    浏览(33)
  • 局域网故障排除经验之谈 网卡故障居多

    局域网是网中各种系统运行的硬件平台,其故障影响着系统中各项工作的顺利进行。局域网的维护工作特别是故障的预防和及时排除是保证工作顺利进行的保障。现在谈一谈维护工作中故障排除的一点体会。 我们知道,网络故障可分为硬件故障和软件故障两大类。当排除了所

    2024年02月07日
    浏览(31)
  • AIGC内容分享(一):一次性搞懂什么是AIGC

    目录 前言 一、基本概念/理论 1、AI 2、AI大模型 3、开源 4、自然语言处理(NLP) 5、AIGC 6、AIGC和Chat GPT的关系 7、AIGC可以生成的内容 二、常见的AIGC应用 (一)常用AIGC软件 (二)AIGC在广告营销中的运用 三、AI的未来发展 四、AI领域新兴职业 在这个全新的时代,AIGC(Artifici

    2024年01月22日
    浏览(35)
  • 售前工程师,一个老网工的经验之谈

    晚上好,我是老杨。 老粉应该知道,我个人的职业发展是简单的,一开始做的是售后,后面接触了一段售前,就直接升到项目经理了。 可以说,我对售后和售前的岗位认知都是相对比较透彻的。 但在网络行业,其实岗位远不止这三个。 在4月初,团队伙伴开发了一个新选题

    2024年01月21日
    浏览(30)
  • 【工具分享】批量多目录图片如何转换PDF,一次性转换多级目录批量的PDF的转换,合并,输出另存等问题

     在工作中我们经常要对图片进行批量转换PDF,由于文件量比较多,目录比较深,工作量比较大比较耗时费力,今天我们分享的主要解决以下问题: 1、单张图片的转换PDF:一张图临时转一下 2、多张图片转换成PDF:多张图单独转成PDF 3、多级目录多张图转换成PDF:多级目录多

    2024年02月10日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包