5.1.4 性能测试(Performance Testing)
在介绍性能测试具体方法之前,首先说明一下性能测试(总称)和性能测试(方法)的区别。我们也分别把它们叫做广义性能测试和狭义性能测试。
【广义性能测试与狭义性能测试】
广义性能测试包括前述所有分类或方法,以考察Web应用对于系统性能影响状况为目的的测试活动。而狭义性能测试则是其中的一个小分类,为了区别广义性能测试中的其他分类。这种测试也是广义性能测试中最基本的方法之一。利用第一章所讲过的维恩图,广义性能测试和狭义性能测试之间的关系如图5-1所示。
图5-1 广义狭义性能测试的包含关系
听起来有些混淆,但对于我们要从事实际工作的人来说,名词并不重要,只需要知道有性能测试这样的总称(广义),还有性能测试这样的方法(狭义)即可。在看相关参考文献的时候,根据上下文一般能很容易判断出当前所指的性能测试是狭义还是广义。
本书中凡是"Web性能测试"这样的字眼,都是指的广义性能测试,特此说明。
【性能测试】
性能测试(英文名称也是Performance Testing)是这样一种方法:它通过模拟实际生产环境中运行的软件平均业务量,测试系统的性能是否满足设计说明书中的性能要求。性能测试方法在所有前述9种方法中是一种最基本、最常见的测试方法。这就是说,它是实施性能测试所必须进行的一种方法。
5.1.5 小白的第一次性能测试
为了尽快熟悉这种方法,小白决定利用自己电脑和公司网站的测试版本来做一次手工性能测试的实践。
一般来说,在网站尚未上线的期间内,网站的技术部门都会维护一个或几个网站的测试版本,方便开发工程师和测试工程师开展工作。即便是网站上线以后,也会继续维护这样的网站,以方便网站每日更新时的调试,待没有问题后再正式上传到生产环境中。这种结构如图5-2所示。
图5-2 网站正式版本与测试版本关系示意
对于小白的第一次性能测试,该如何选择测试所针对的网站版本呢?有两点需要考虑:
由于网站正式版本尚未发布,目前还没有正式版本可供选择。
即使正式版本发布也不能直接使用它来测试(因为这样会影响用户的使用)。
根据以上两点,选择图5-2中的稳定测试版本。
截至目前为止,小白所知道的仅仅是打开网站的响应时间,所以他想从这个时间入手,来评估一下网站测试版本的性能。他是这样进行测试的:
打开浏览器,输入网站测试版本的网址,按下Enter键,并记录此时的机器时间。
在网站全部打开后再记录一次当前机器时间。