首页 > 其他分享 >如何确定性能测试指标

如何确定性能测试指标

时间:2024-09-23 16:46:52浏览次数:6  
标签:40% 性能 指标 订单 测试 QPS 性能指标

知识星球有同学问了这样一个问题:

开展了一次压测,但不知道如何筛选性能测试报告中的性能指标。需求里没有提到明确的技术指标,测试报告中需要说明被测服务的CPU、内存使用率数据吗?压测机集群的负载情况,是否需要说明?

很典型的一个和性能测试有关的问题,也是很多性能测试小白比较迷惑的问题。

理论上来说,需求陈述阶段就应该明确相关指标,然后再开展性能测试的执行监控和分析优化工作。但实际工作场景中,一句话需求或者没有明确指标的技术需求很常见。

如何应对并解决这类问题呢?结合我个人的实践经验和理解,这篇文章聊聊这个话题。

 

性能指标重要吗?

毫无疑问,性能指标很重要。

相比于功能测试或者业务测试来说,性能测试更具有技术属性,即对结果的评估目的性更明确。功能测试如果出现BUG,原因可能是需求描述不清晰,设计的交互逻辑不合理,或者开发和测试同学对需求实现理解有差异。

性能测试的结果是更精确,更容易用数值衡量的。比如:响应时间2秒和200ms,是特别大的差异。如果系统的访问量稍高一些,则可能带来更大的影响。

因此在性能测试的全生命周期中,在需求阶段最好就将预期的性能测试技术指标明确,这样才能便于后续方案制定、压测实施监控以及分析优化验证

当然,很多时候提出性能需求的人可能对此并不了解或看重,甚至一句话需求也很常见。比如:客户要求我们出具一份性能测试报告,那谁你压测一下出个报告。

当然,面对这种一句话需求,同样是有应对方案的,请看下面的内容。

 

如何确定性能指标?

从我的角度来看,性能指标是一个相对概念,如果没有参考或者技术目标,那性能测试活动开展是很难拿到好结果的

就像打靶射箭一样,在子弹出膛之前,需要知道子弹射向哪里,然后根据距离、风向等因素调整射击角度。性能技术指标就是那个靶子,告诉我们目标是什么。

同样,性能技术指标是一个滞后的参考值,它只有在有测试结果之后才能发挥真正的作用

至于性能测试的结果和性能指标之间的关系,我认为性能指标是一个参考值。与之相比更重要的是,最终的性能测试结构是否能被团队或项目中其他角色认可和接受

在性能测试开展之前要确定性能测试指标,这是按照比较标准的模版或者套路往下走,更适合初学者或者没太多实践的同学。

但对于技术能力强有丰富实践经验的同学来说,遇到问题解决问题从来都是因地制宜的,而不是纯粹的参考或者遵循模版或套路。

作为测试同学特别是专职的性能测试同学,有责任也有义务在需求不明确时,牵头搞定这个问题。

需求不明确,那就找相关干系人(产品/研发/运维)沟通确认,帮他们捋清思路,确认需求。作为专业的性能测试人员,你要自信在性能测试领域,绝大多数业务开发和运维,是不如你专业的,术业有专攻。

以上述问题为例:提出需求的人最关心的是系统上线后的能否承载用户访问并正常提供服务。从这里入手,你可以通过沟通获得一些基本信息,比如注册用户数,日活数,或者业务峰值的网关QPS。

没有具体数值也没事,重点在于通过获得的信息来评估出几个性能技术指标,并说明背后的逻辑,和对方达成一致

下面是几年前我负责的一个项目案例,供大家参考:

业务目标:双11当天,预估平均客单价为500,单日GMV为10亿,那么支付订单量为10亿/500=200W。

技术指标

假设日常支付订单量为50W,支付转化率为40%,订单支付QPS峰值为200。预估大促时的支付转化率为60%,则可得:大促峰值订单支付QPS为(200/40%)*60%*(200W/50W)=1200QPS。为了留有一定冗余空间,上浮30%,即订单支付的QPS预估为1500;

电商的导购下单支付链路为:首页→商品详情→创建订单→订单支付→支付成功,这是类似漏斗的一个转化逻辑。假设首页→商品详情转化率为40%,商品详情→创建订单转化率为40%,创建订单→订单支付转化率为40%,那么可得:创建订单QPS为1500/40%=3750,商品详情QPS为3750/40%=9375,首页QPS为9375/40%=23437;

按照核心链路之间的依赖调用关系,借助trace追踪,可得到大促期间所有核心应用及核心链路的QPS数值。

确认流量模型后,根据业务特性和场景评估出对应的业务可接受RT,再从稳定性的角度给出服务器的安全水位参考值,沟通确认达成一致。

很多时候,并不存在明确的需求。作为专业领域的人,你的岗位职责中有一项潜在的职责就是抹除不确定性,通过不断的沟通交流和实践,最终得到确定具体的结果。

 

最后要说明的是,没有通用的性能指标。指标只是一个参考和评估基准,重点在于和提出需求的人达成一致,使其认同。

标签:40%,性能,指标,订单,测试,QPS,性能指标
From: https://www.cnblogs.com/imyalost/p/18427305

相关文章

  • 谷歌发布新 RL 方法,性能提升巨大;苹果前设计总监正与 OpenAI 合作开发 AI 设备丨 RTE
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(Real-TimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编辑......
  • 鸿蒙跨端实践-长列表解决方案和性能优化
    这是我参加创作者计划的第一篇文章。 前言长列表是前端和客户端应用中最常见的业务场景,比如商品瀑布流等,有成千上万条数据,因此长列表的渲染性能在iOS,Android,Harmony,Web等各大平台都非常重要。HarmonyOS和iOS类似也提供了自己的解决方案。Roma(罗码)作为跨端平台,在此基础上......
  • 苍穹外卖学习日志 -----20天项目从零到完结-----含软件下载,环境配置,框架学习,代码编写,
    年份2024    基础:Javase  Javaweb已完结   2024  8.25---9.14  20天Day-01   8.25今天开始学习已经晚了,网盘下载了一下文件,做了一些开始项目的准备工作。本来其实打算用notepad++来写学习日志的,但是那个传不了图片,而且编辑视图没有这......
  • windows下UDP端口测试
    1、下载netcat下载地址:https://eternallybored.org/misc/netcat/2、安装netcat解压之后,把安装包配置到环境变量中去3、UDP端口测试 4、需要注意的问题 ......
  • 继电器测试负载箱的维护和保养方法有哪些?
    继电器测试负载箱是用于模拟各种电气负载的设备,广泛应用于继电器、接触器等电气元件的测试和校验。在日常使用中,为确保其正常运行和准确性,以下是一些常见的维护和保养方法:电源问题:如果电源电压不稳定或波动过大,可能会导致继电器测试负载箱无法正常工作。为此,建议定期检查电源线......
  • 软件需求与分析课堂测试02 – 业务需求
    软件需求与分析课堂测试02– 业务需求 ----------------------------------------------------------------------根据下列描述,说明新的直接销售和财务处理系统的业务需求有哪些?EspeciallyforYouJewelers是大学城的一个小珠宝零售商。在过去的两年里,EspeciaIlyforYo......
  • 影像测试技能
    主要分三种职业:3A算法开发、图像tuning,图像测试这三种。3a算法:AE/AWB/AF的开发,入门难一些,资料很少。图像tuning:在理解3A算法的基础上,调试3A参数,当前需求量还是比较大的,学习起来也不太难,难在实践积累,多看多调。1、AWBautowhitebalance 自动白平衡2、AEautoexposure自动曝光3......
  • 人像评测测试用例典型场景
    在**人像评测**中,通常会针对拍摄人像时的设备表现进行一系列实际场景测试。目的是评估设备在不同条件下拍摄人像的能力,包括细节、色彩、光线处理等方面。以下是一些典型的**人像评测场景用例**:###1.**自然光下的室外拍摄**-**场景描述**:测试在白天的自然光条件下设备的人像拍......
  • 影像的评测-主要测试什么?
    影像评测主要测试和评估图像质量、摄像设备性能以及与图像相关的各种视觉效果。影像评测的目标是确定图像的清晰度、色彩准确度、细节保留等方面,确保设备或图像满足某些标准和用户需求。以下是影像评测通常会测试的主要内容:###1.**分辨率**-测试图像的细节清晰度和分辨能力,查......
  • Python用TOPSIS熵权法重构粮食系统及期刊指标权重多属性决策MCDM研究|附数据代码
    分析师:SikunChen在当今世界,粮食系统的稳定性至关重要。尽管现有的全球粮食系统在生产和分配方面表现出较高的效率,但仍存在大量人口遭受饥饿以及诸多粮食安全隐患。与此同时,在学术领域,准确评估情报学期刊的质量和影响力对于学术研究和信息传播意义重大。本研究旨在通过多种方法对......