性能测试模型分析及建立
对于应用系统的性能测试,测试模型的建立至关重要,性能测试模型要以实际生产环境为标准搭建,只 有模型符合实际的生产环境,性能测试的结果才能真实有效的反映将来上线的生产环境的实际性能情况 。根据长期测试关键核心业务系统的经验,应用系统系统的性能测试模型分析应当按照下面几个步骤来 实施:
业务模型建立 全面分析应用系统系统上线后所面临的性能压力的来源和类别,并且通过分析历史交易数据来确定 各种性能在整个系统压力所占比例。例如确定前台应用子系统的业务类别和并发比例,后台批处理业务 的数据规模和类别等。最终目的是建立一个能够逼真模拟应用系统系统实际运行场景的业务模型。
测试数据模型建立 根据业务模型准备测试数据和基础数据,确保系统数据库中数据容量和真实性符合实际运行情况。
监控模型建立 性能测试的目的不仅仅是获得关键业务的性能指标,同时也要通过性能测试监控主机、数据库、中 间件的各个性能指标,从而发现性能瓶颈,为进一步的性能调优提供准确的参考数据。
测试模型建立 对应用系统系统的测试,因该采取基准测试、单业务负载测试、混合负载测试的顺序来执行。这样 做的好处,在单业务负载测试是就可以发现各个系统本身的性能缺陷,而混合负责测试时将重点检查各 个业务相互影响导致的性能缺陷。
执行模型建立 应用系统系统的性能测试必须要局方客户、系统开发商、第三方测试服务商紧密配合,才能保证整 个测试工作的成功。因此,只有建立一套规范的性能测试流程,明确各个角色的工作职责,才能使性能 测试工作有序、高效的开展。
风险模型建立 由于性能测试的特殊性,因此在整个测试过程中,会遇到很多导致整个性能测试失败的风险。丰富 性能测试经验是必须的,能够提前分析可能遇到的各种风险并制定相应的规避措施。这样才能将性能测 试的风险降到最低,最终圆满完成应用系统系统的上线性能验收测试。
上面的步骤或者说方面只是性能测试项目实施中要完成的工作方面的的概述,不同的项目可能有不 同的实施方法或步骤要视项目而具体实现。要完成一个有效的应用系统的性能测试,从需求调研到测试分析的各个阶段,有很多工作需要完 成,在以后的文章中,会对性能测试项目的分阶段工作进行讲解,适当的时侯会搭配一些项目实施的例 子来进行讲解。
成功的 Web 应用系统性能测试[2]
1.2 Web应用系统技术架构
Web应用系统的前端为浏览器,后台为Web服务器(如Apache,Microsoft Internet Information
Server),浏览器和Web服务器之间的交互基于HTTP协议。HTTP协议本身是无连接的,Web服务器通过
Session机制来建立一个浏览器所发出的先后连接之间的关联。通过实验证明,当浏览器客户端在首次访
问Web服务器后,中国IT室验实如果该浏览器客户端不
发送后续请求,服务器维持该浏览器客户端的Session变量所消耗的系统资源非常小。
2 Web应用系统性能测试过程
标准的Web应用系统性能测试过程包括确定性能测试需求,开发性能测试脚本,定义性能测试负载模
型,执行性能测试和形成性能测试报告。本章将分别介绍上述过程,并通过举例说明如何完成每一环节
。
2.1 确定性能测试需求
科学定义Web应用系统性能测试需求对一个成功的性能测试非常重要。通常,Web应用系统的性能测试
需求有如下两种描述方法。
2.1.1 基于在线用户的性能测试需求
该需求描述方法主要基于Web应用系统的在线用户和响应时间来度量系统性能。当Web应用系统在上线
后所支持的在线用户数以及操作习惯(包括操作和请求之间的延迟)很容易获得,如企业的内部应用系
统, 通常采用基于在线用户的方式来描述性能测试需求。以提供网上购物的Web应用系统为例,基于在
线用户的性能测试需求可描述为:10个在线用户按正常操作速度访问网上购物系统的下定单功能,下定
单交易的成功率是100%,而且90%的下定单请求响应时间不大于8秒;当90%的请求响应时间不大于用户的
最大容忍时间20秒时,系统能支持50个在线用户。
2.1.2 基于吞吐量的性能测试需求
该需求描述方法主要基于Web应用系统的吞吐量和响应时间来度量系统性能。当Web应用在上线后所支
持的在线用户无法确定,如基于Internet的网上购物系统,可通过每天下定单的业务量直接计算其吞吐
量,从而采取基于吞吐量的方式来描述性能测试需求。以网上购物系统为例,基于吞吐量的性能测试需
求可描述为:网上购物系统在每分钟内需处理10笔下定单操作,交易成功率为100%,而且90%的请求响应
时间不大于8秒。
2.2 开发性能测试脚本
在确定Web应用系统性能测试需求后,就要根据性能测试需求中确定的功能开发性能测试脚本。比如
,针对前面定义的网上购物系统的性能测试需求,将开发下定单功能的性能测试脚本。