浅谈性能测试策略制定

发表于:2021-3-09 09:26

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:李元库    来源:51Testing软件测试网原创

  近年来,随着各行各业客活量的不断发展,软件运行故障多表现为性能问题。因此,软件性能越来越受到测试人员关注,而性能测试是发现和识别系统瓶颈的重要环节。
  但在实际性能测试过程中,测试人员经常遇到交易并发分散、无法确定交易数量的问题。本文主要针对上述问题,介绍测试策略制定方法,以满足不同交易类型的指标测算。
  确定性能测试指标
  在性能测试执行前需要对性能需求进行分析,明确测试指标。通常从以下几个维度进行分析:
  各性能指标如下,在性能测试过程中,如发现测试结果有下述任一指标不满足目标时,需分析查找原因,确定问题并分析调优。
  系统处理能力满足交易量预估。对可以确定交易量的交易,此项为衡量性能的主要指标。
  交易响应时间。目标系统平均完成用户请求的总时长,此指标通常根据系统交易复杂度以及具体的业务需求确定。
  系统资源消耗合理。比如系统CPU资源利用率小于80%,系统MEM资源利用率小于等于80%等,受测试环境硬件所限,可根据实际情况综合衡量。
  交易差错率<0.5%。
  TPS呈线性增长稳定,无较大起伏。
  制定性能测试策略
  针对系统性能测试指标,可根据交易量和交易用户是否确定来制定相应的性能测试策略,主要介绍以下两种方法。
  1、交易量及交易用户数确定
  前提:指所测交易有以往的交易数据,可从系统日志统计中查到相关交易的业务量数据,确定所测交易的日均、日峰交易量以及交易用户数。
  方法1:按并发用户数量设计测试策略
  以银行智能自助设备业务处理系统为例:一笔客户业务交易共产生10个待审核任务需提交后台业务处理审核中心,这10个任务需要2个不同级别的柜员进行审核,其中二级柜员需要处理6笔,三级柜员需要处理4笔,以某省客户交易日均5万笔为业务量基准,二级柜员日均需完成30万笔审核业务量,三级柜员需完成20万笔审核业务量。
  测试策略制定过程如下:
  确定TPS。审核日均交易时间为6小时,即21600秒,则二级柜员日均TPS为13.89笔/秒,同理三级柜员为9.26笔/秒。
  确定并发数。根据业务量统计,二级柜员完成一笔审核任务平均耗时20秒,三级柜员单笔任务平均耗时10秒。
  如果要完成日审核任务,则需配备二级柜员=300000/(21600/20)=278人,三级柜员需配备=200000/(21600/10)=93人。在发起性能交易时,可按照不同级别柜员添加不同交易,各交易设置不同的间隔时间(Pacing),保证不同级别柜员交易时间分别为20秒,10秒。由于性能测试资源与实际生产资源有差异性,测试时的并发用户数按278:93的比例发起即可。
  此策略有一个弊端,由于交易间隔时间不一致,可能会使时间点上服务器承受的并发压力比和设置的并发比不相同,可能会造成间隔时间小的交易处理能力已达上限,但其他交易还能继续增加并发的情况,未能测试到系统的最大处理能力。如果改变用户并发比例,那对并发用户比例的计算也就没意义,此策略不能延续。
  方法2:以系统处理能力设计测试策略
  此策略偏向于服务器端的表现,根据TPS测试系统性能是否满足处理要求。
  比如上述业务,一笔客户业务交易共产生10个待审核任务,二级柜员需要处理6笔,三级柜员需要处理4笔,从服务器端看同时处理完10笔任务才能完成一笔客户业务要求,所以并发可以控制在6:4比例压测服务端。假设所有交易响应时间都在1秒以下,则交易间隔时间可设置为1秒,控制交易发起服务器的并发性。
  2、交易量和交易用户不确定
  前提:对于新开发的交易,不能确定日均和日峰交易量,交易规律也不明确,交易用户数有一个预估值,但不确定。
  方法1:按交易优先级设计测试策略
  对于没有明确交易量和交易人数的场景,可按交易优先级大致分配交易并发比例。优先级高的设置并发相对较大,优先级低的交易并发相对较小。
  将所有交易设置好间隔时间并且保证交易并发比例正确,在场景中可按此比例逐渐提高并发人数,监控服务器资源。
  方法2:按系统处理能力设计测试策略
  对于没有明确交易量,没有明确交易优先级的交易,可以仅测试当前环境下系统的最大处理能力,按比例梯度增加用户并发数量,查看并发用户增加的TPS递增情况。
  以上是几种常用的性能测试策略制定方法,实际制定测试策略时,需根据交易类型、应用需求具体分析。

      版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号