一个大型集中项目的性能测试实例(下) 软件测试
4. 测试环境与测试工具
制定了合理的测试计划、设计了满足需要的测试用例之后,我们就可以开始着手准备测试环境和考虑如何在测试中运用测试工具了。
4.1. 测试环境
测试环境的部署和维护是一件需要详细策划的事情,部署了合理的测试环境是测试达到目标效果的前提条件。一般来说,在考虑部署和维护测试环境时,需要考虑以下内容:
测试网络环境
性能测试一般都是在一个网络中进行,可能是一个单独的局域网,也可能是和生产环境相同的网络,不管实际的情况如何,我们都必须评估网络状况是否会对我们的测试产生影响,也就是说,要保证网络环境能够较好地模拟实际网络环境(包括网络状况、负载等)。当然,在我们的本次测试中,由于网络状况对我们的测试结果没有什么影响,我们的测试是在一个接近生产环境的100M局域网中进行。
初始数据的准备
在执行测试之前,我们需要准备足够支撑测试进行的初始数据,对本测试来说,初始数据包括静态数据、程序运行时必须的配置数据、配置文件、用户帐号信息等,建议将这部分数据按照不同的数据来源分别列出形成CheckList,这样可以避免在测试过程中出现数据准备不充分的情况。
本测试中我使用的CheckList示例如表1所示:
表1 本测试中使用的测试环境CheckList
序号 | 测试环境项目 | 来源 | 责任人 | 预计完成时间 | 是否已部署 |
1 | 数据库静态数据 | 配置项 | XXXX | XXXXXXX | 是 |
2 | 数据库中的网元配置数据 | 测试用例 | XXXX | XXXXXXX | 是 |
3 | WEB用户信息 | 测试用例 | XXXX | XXXXXXX | 是 |
4 | Unix用户帐号信息 | 配置项 | XXXX | XXXXXXX | 否 |
5 | 模拟发送的话务数据 | 测试用例 | XXXX | XXXXXXX | 否 |
…… | …… |
…… | …… | …… | …… |
10 | 网元话务报告发送模拟程序 | 测试用例 | XXXX | XXXXXXX | 是 |
…… | …… | …… | …… | …… | …… |
测试数据的可恢复性
说到测试数据,就不能不提测试数据的可恢复性。在一次测试过程中,一个用例一般都需要被多次执行,但在多次执行同一个用例时,就必须保证每次执行用例时的环境一致,因此在准备好数据,执行用例之前,必须要计划好测试完成后怎样将整个测试环境中的数据恢复,在本次测试中,我们采用的是为每个测试准备一个“回滚”脚本,该脚本用来恢复数据至测试用例执行之前。
测试环境的时间同步