一个良好的测试计划应包括:
1) 目标。必须定义每个测试阶段的目标。
2) 结束准则。必须制定准则以规定每个测试阶段何时可以结束。
3) 进度。每个阶段都须有时间表。应指出何时设计、编写和执行测试用例。某些软件技术,如极限编程,要求在程序编码开始之前就设计测试用例和单元测试。
4) 责任。对于每一个阶段,应当确定谁来设计、编写和验证测试用例,谁来修改发现的软件错误。由于在大型项目中讨论特定的测试结果是否代表错误时,有可能出现争端,因此还需要确定一名仲裁者。
5) 测试用例库及标准。在大型项目中,用于确定、编写以及存储测试用例的系统方法是必须的。
6) 工具。必须确定需要使用的测试工具,包括计划由谁来开发或采购、如何使用工具以及何时需要使用工具。
7) 计算机时间。计划每个测试阶段所需的计算机时间,包括用来编译应用程序的服务器(如果需要的话),用来安装测试所需的桌面计算机、用来运行基于web应用程序的web服务器、联网的设备(如果需要的话)等等。
8) 硬件配置。列出硬件配置的清单,该如何满足需求以及何时需要满足。
9) 集成。系统集成计划规定了系统集成的顺序,系统每个版本的功能以及编写“脚手架”代码以模拟不存在部件的职责分工。
10) 跟踪步骤。必须跟踪测试进行中的方方面面,包括对错误易发模块的定位,以及有关进度、资源和结束准则的进展估计。
11) 调试步骤。必须制定上报已发现错误、跟踪错误修改进程以及将修改部分加入系统中去的机制。调试计划中还应包括进度、责任分工、工具以及计算机时间/资源等。
12) 回归测试。回归测试在对程序作了功能改进或进行了修改之后进行,其目的是判断程序的改动是否引起了程序其他方面的退步。回归测试通常重新执行测试用例中的某个子集。回归测试计划规定了测试人员、测试方法和测试时间,它也是必须的。