一、 测试计划的定义与原则
1. 测试计划的定义
- IEEE 829-1983 测试计划的定义及目的
- 一个叙述了预定的测试活动的范围、途径、资源及进度安排的文档。它确认了 测试项、被测特征、测试任务、人员安排以及任何偶发事件的风险。
- 软件测试计划是指导测试过程的纲领性文档。计划可以统一认识,可以规划过 程。
- 测试计划包含了产品概述、测试区域/测试范围(测试项)、 测试目标(被测 特征)、测试优先级、测试配置/测试资源、测 试周期、进度安排(测试任务、人员安排)、 测试策略、测试方法/途径、测 试交流、风险分析、测试标准、需交付文档等内容。
2. 测试计划进入与退出准则、责任人
2. 测试资源的规划
软件测试项目所需的人员和要求在各个阶段是不同的。
- 在初期,测试组长首先要介入进去,参与需求评审、确定测试需求和测试范围、 制定测试策略和测试计划等。
- 在测试前期,需要一些比较资深的测试设计人员、测试脚本或测试工具开发人 员参与或负责软件测试需求的制定和分解、设计测试用例、开发测试脚本等工 作。
- 在测试中期,主要是测试的执行,测试人员的数量取决于测试自动化实现的程 度。如果测试自动化程度高,人力的投入则不需要明显的增加:如果测试自动 化程度低,对执行测试的人员要求就比较多了。
- 在测试后期,资深的测试人员可以抽出部分时间去做新项目的准备工作。
三、工作量估算、里程碑和进度安排
1. 测试工作量估计
1.1 怎么确定测试工作量
测试的工作量是根据测试范围、测试任务和开发阶段来确定的。
- 团队工作效率越低,测试工作量越大。
- 测试的质量要求越高,测试的工作量越大。
- 不同的开发阶段的测试工作量的差异也较大。新产品第一个版本的测试的工作 量要大一些,若后续版本功能增加加多,则后续版本测试量变大。
- 编程质量越低,测试的工作量越大。
- 程序复杂度越高,测试的工作量越大。
- 之前测试的缺陷多且分布很广,测试工作量大。
- 风险越多,等级越高,测试工作量越大。
- 自动化程度越低,测试工作量越高。但是在很多情况下,测试自动化并不能大 幅度降低工作量,因为测试脚本开发的工作量很大。
1.2 任务细分
工作分解结构表方法
- 列出本项目需要完成的各项任务。
- 对每个任务进一步细分,可进行多层次细分,直到不能细分为止。
- 根据任务的层次给任务进行编 。
案例
四、 测试风险分析与管理
对软件测试中的风险进行管理,基本内容有:风险识别、风险评估和风险控制。
1. 风险识别
- 建立风险项目检查表,将测试范围、测试过程中的风险识别出来,按风险内容进行 逐项检查、逐个确认,确定哪些是可避免的风险,哪些是不可避免的,对可避免的 风险要尽量采取措施去避免。
案例
1. 什么是测试策略
- 描述当前测试项目的目标和所采用的测试方法;
- 描述在规定的时间内哪些测试内容要完成,软件产品的特性或质量在哪些方面得到 确认;
- 描述测试不同阶段(单元测试、集成测试、系统测试)的测试对象、范围和方法;
- 描述每个阶段内所要进行的测试类型(功能测试、性能测试、压力测试等)。
2. 案例
分阶段的测试策略
- 严格执行代码复查,保证在早期就发现问题,而非在代码发布之后。
- 利用单元测试和集成测试,尽早地发现更多的问题,并准备好自动化测试的 BVT (Build Verification Test,软件包验证测试)。
- BVT 是开发人员检入自己的代码,项目组编译生成当天的版本后进行的 测试,主要目的是验证最新的软件版本在功能上是否完整,主要的软件特 性是否正确实现。冒烟测试通过后,就可以进行更大规模的测试了。
- BVT 优点是时间短,缺点是覆盖率很低。BVT 测试也称“冒烟测试”。
- 不能忽略安全性测试、可用性测试、配置测试和数据完整性测试。
- 在功能性测试、安全性测试、配置测试中可进行一些探索性测试。
- 制定更为详细的 UAT(用户验收测试)测试计划,将其与测试脚本和培训材 料一起提供给用户,以帮助用户快速提高并完成任务。
六、编写测试计划书
- 测试计划是一个过程,不仅仅是“测试计划书”这样一个文档,测试计划会随着情 况变化不断进行调整,以便于优化资源和进度安排,减少风险,提高测试效率,并 及时修改“测试计划书”。
- 测试计划书的内容也可以按集成测试、系统测试、验收测试等阶段去组织。
- 为每一个阶段制定一个计划书,还可以为每个测试任务,目的(安全性测试、性能 测试、可靠性测试等)制定特别的计划书。
- 对于一些重要的项目,会形成一系列的计划书,如测试范围,风险分析 告、测试 标准工作计划、资源和培训计划、风险管理计划、测试实施计划、质量保证计划等。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!