5.2 测试计划和估算
2015-06-23
5.2.2. 测试计划活动(K3)
对整个系统或部分系统可能的测试计划活动包括:
- 确定测试的范围和风险,明确测试的目标;
- 定义测试的整体方法(测试策略),包括测试级别(按测试阶段或层次)的定义、入口和出口准则的定义;
- 把测试活动整合和协调到整个软件生命周期活动中去(采购、供应、开发和运维);
- 决定测试什么?测试由什么角色来执行?如何进行测试?如何评估测试结果?
- 为测试分析和设计活动安排时间进度;
- 为测试实现、执行和评估安排时间进度;
- 为已定义的不同测试活动分配资源;
- 定义测试文档的数量、详细程度、结构和模板;
- 为监控测试准备和执行、缺陷解决和风险问题选择度量项;
- 确定测试规程的详细程度,以提供足够的信息支持可复用的测试准备和执行。
5.2.3. 入口准则(K2)
入口准则定义了什么时候可以开始测试,如某个测试级别的开始,或什么时候一组测试准备就绪可以执行。
入口准则主要包含:
- 测试环境已经准备就绪并可用;
- 测试工具在测试环境中已经准备就绪;
- 可测的代码可用;
- 测试数据可用。
5.2.4. 出口准则(K2)
测试出口准则(exit criteria)的目的是:定义什么时候可以停止测试,比如某个测试级别的结束,或者当测试达到了规定的目标。
出口准则主要包含:
- 完整性测量,比如代码、功能或风险的覆盖率;
- 对缺陷密度或可靠性度量的估算;
- 成本;
- 遗留风险,例如没有被修改的缺陷或在某些部分测试覆盖不足;
- 进度表,例如基于交付到市场的时间。
5.2.5. 测试估算(K2)
在本大纲中,有两种估算测试工作量的方法:
- 基于度量的方法:根据以前或相似项目的度量值来进行测试工作量的估算,或者根据典型的数据来进行估算;
- 基于专家的方法:由任务的责任人或专家来进行测试任务工作量的估算。
一旦估算了测试工作量,就可以识别资源和制定时间进度表。 测试的工作量可能取决于多种因素,包括:
- 产品的特点:规格说明和用于测试模型的其它信息(即测试依据)的质量,产品的规模,问题域的复杂度,可靠性、安全性的需求和文档的需求;
- 开发过程的特点:组织的稳定性、使用的工具、测试过程、参与者的技能水平和时间紧迫程度等;
- 测试的输出:缺陷的数量和需要返工的工作量。
5.2.6. 测试策略,测试方法(K2)
在特定项目中,测试方法是测试策略的具体实现。测试方法是在测试计划和设计阶段中被定义并逐步细化的。它通常取决于(测试)项目目标和风险评估。它是规划测试过程、选择测试设计技术和应用的测试类型以及定义入口和出口准则的起点。
测试方法的选择取决于实际情况,应当考虑风险、危害和安全、可用资源和人员技能、技术、系统的类型(比如客户定制与商业现货软件的比较)、测试对象和相关法规。
典型的测试方法包括:
- 分析的方法,比如基于风险的测试,直接针对风险最高的部分进行测试;
- 基于模型的方法,比如随机测试利用失效率(如:可靠性增长模型)或使用率(如:运行概况)的统计信息;
- 系统的方法,比如基于失效的方法(包括错误推测和故障攻击),基于检查表的方法和基于质量特征的方法;
- 基于与过程或符合标准的方法,比如在行业标准中规定的方法或各类敏捷的方法;
- 动态和启发式的方法,类似于探索性测试,测试很大程度上依赖于事件而非提前计划,而且执行和评估几乎是同时进行的;
- 咨询式的方法,比如测试覆盖率主要是根据测试小组以外的业务领域和/或技术领域专家的建议和指导来推动的;
- 可重用的方法,比如重用已有的测试材料,广泛的功能回归测试的自动化,标准测试套件等。
可以结合使用不同的测试方法,比如基于风险的动态方法。
测试计划模版(IEEE 829)
- 测试计划标识
- 介绍
- 测试项
- 需要测试的特性
- 不需要测试的特性
- 测试方法
- 测试项通过/失败准则(测试出口准则)
- 挂起准则和恢复准则
- 测试交付物
- 测试任务
- 环境要求
- 责任
- 人员配备和培训要求
- 进度表
- 风险和意外事件
- 审批