3.4.3 第1步:需求分析

项目时间安排的标准是:一周的准备时间,五天的测试执行时间。由于客户缺少内部的性能测试专家,所以他们常年将该测试项目外包出去。

尽管提供了专门的测试环境,但是其服务器的数量和规模都与真实环境相去甚远,当然这种现象在性能测试过程中也是常见的。

呼叫中心案例的性能目标是可用性、并发性和响应时间。这个应用程序必须可用并且可以支持100个并发用户的负载。在响应时间方面,Web服务器的性能必须在前一个版本的基础上有所提高。

本性能测试项目定义了5个关键事务。对于呼叫中心来说,输入数据的需求相对复杂一些,它包含了以下类型的数据。

呼叫中心使用的ID

为了满足不同的用户会话需求,本性能测试项目需要一套呼叫中心登录证书。为了实现100并发用户数的目标,还需要20套证书。

检测中心

司机可以在很多地区的车辆检测中心预约时间,所以需要一份符合实际情况的所有检测中心的列表。

车辆登记编号

因为司机在预约时间的时候使用的都是车牌号,所以必须要有大量合法的车牌号。司机驾照编号司机也有可能使用自己的驾照编号来预约,所以除了车牌号以外,我们还需要一些合法的司机驾照编号。

目标数据库是一份真实数据库的最新副本,所以数据的规模不会成为影响测试结果的问题。本案例中,数据库在执行两次性能测试之间几乎不需要重置(它可能只需要一份基于真实数据的“裁减”)。

性能测试会使用递增的方法实现100个并发用户的目标。测试首先关注每一个事务的性能基线,即一个虚拟用户保持10分钟的稳定运行状态,然后逐渐开始递增,每一步增加25个用户,并保持15分钟的稳定运行状态,在这15分钟时间内可以观察稳定状态下的性能情况。

虽然这次性能测试过程中可以使用测试工具自带的性能监视器,但服务器的关键性能指标还是只关注一般的Windows性能指标。

本案例中的测试团队更加遵循常规的性能测试团队组合,它指定了一名项目经理和一名测试顾问。如前文所述,我认为这只是大多性能测试项目中的常见的人员需求罢了。