摘要:本文简单介绍软件的性能测试过程,将性能测试过程分为性能测试设计、性能测试执行、测试结果分析三个阶段,并介绍了每个阶段的主要工作内容和方法,配有简单的例子进行解释。

  关键字:性能测试 性能测试设计 测试场景 结果分析

  随着企业需求的日益增长以及计算技术的不断进步,企业级系统的应用已经从早期的单机时代转换到了服务成千上万个用户的因特网时代。随着企业业务量的增加,企业的应用系统承载的负荷越来越重,对应用系统的要求越来越高。系统性能的好坏直接影响企业对外提供服务的质量,而性能测试在软件的质量保证中起着重要的作用。

  本人结合自己的经验,从技术角度简单讨论一下软件性能测试的测试过程。软件性能测试过程分为三个阶段:

  ● 性能测试设计

  ● 性能测试执行

  ● 测试结果分析

  1.性能测试设计

  性能测试设计是性能测试过程中一个非常重要的环节,性能测试设计的好坏直接关系到测试的充分性和测试结果的有效性。

  性能测试设计阶段主要包括性能需求分析、测试场景制定等。

  1.1 性能需求分析

  性能需求分析主要包括测试目的和性能指标确定。

  进行性能需求分析,需要明确性能需求。性能需求可以从被测软件的相关文档中获得,也可以通过与用户沟通来获得。仔细阅读被测软件附带的相关文档,包括需求文档、使用文档、数据库设计文档等,提取有关软件性能相关的描述,例如“要求操作响应时间在……以内”、“要求……能够快速……”、“要求……能够支持……用户访问”、“要求……能快速稳定运行”、“要求系统连续……无故障运行”等,然后对提取的测试需求进行分析。

  (1)确定测试目的

  进行需求分析,首先要明确性能测试目的,测试目的不同直接影响后序的性能测试场景的制定。测试目的可以总结为三类:符合性验证、性能考察、性能调优。

  ● 符合性验证―主要验证软件是否满足规定的性能指标要求。如测试软件在某一条件下的平均响应时间,或者吞吐率,或者并发用户数等是否满足规定的要求。

  ● 性能考察―主要测试软件在某种条件下运行的性能状况。如测试软件所能支持的大并发用户数或者大数据量,软件在不同环境下的性能状况,随用户数量的变化或者数据量的变化情况下软件的性能变化状况等。

  ● 性能调优―主要是通过性能测试找出软件的性能瓶颈,分析出引起软件性能缺陷的原因,并进行针对性的性能优化,以改进软件性能。如对软件进行性能测试,确定是软件否存在性能方面的问题,并定位性能瓶颈,对其进行性能优化。

  将测试需求与上述目的进行比较,确定出本次测试的测试目的。

  (2)确定性能指标

  此处确定的性能指标指的是性能需求中要求的,且通过性能测试直接得到的性能指标,主要包括响应时间、吞吐率、资源利用率、交易成功率等,是测试结果分析和判断的依据。性能测试需要有明确的性能指标,某些软件系统具有明确的性能指标,而有的软件系统则需要和用户一起,通过对软件系统的业务特点、技术特点、应用情况等进行综合分析来获得。

  如,一软件系统,要求1个小时内必须完成7 200笔业务。可以得出每秒需要完成的业务为7 200/3 600=2笔,则可以得出该系统需要关注的性能指标为服务器处理请求的能力,即吞吐率,值为2笔/秒。