JiaHe

相遇即是缘

测试的流程与计划

1.10 - 测试的流程与计划

一、软件测试流程

  1. 参加需求评审会议 ⬇️
  2. 拟定软件测试计划 ⬇️
  3. 测试设计与开发 ⬇️
  4. 实施软件测试 ⬇️
  5. 测试评估 ⬇️
  6. 测试总结 🚩

二、流程详解

1️⃣ 拟定软件测试计划

拟定软件测试计划是软件测试工作的第一步流程,也起到至关重要的作用。本阶段主要是对即将开展的测试工作进行整体的安排(例如资金、资源、人员的分配,准备测试用例等)。

本阶段的主要工作内容

  • 仔细研究软件规格说明文档。
  • 将等待测试的软件产品分解为可以独立测试的单元。
  • 确定每个单元需要采用的测试技术。
  • 制定下一阶段测试工作的计划。

2️⃣ 测试设计与开发

分析测试需求,设计测试用例,准备测试数据,开发测试代码,搭建测试环境

测试用例:是一组条件或变量,测试工程师可以根据其来确认软件是否可以正确工作。测试用例一般由测试输入、测试标准、预期结果等内容组成。本质上,测试用例可以将被测对象的功能和特性进行细化展开,可以保证软件功能不被遗漏或重复测试,也可以使软件测试的效果不完全依赖于测试工程师的个人能力,便于组织更加合理的安排测试人员。

测试数据直接影响测试工作的总体质量,也是影响测试环境的因素之一。测试数据由测试工程师、DBA 或开发工程师编写,一般来源于自行编写、利用已有系统中的数据或利用非电子化的业务数据。一般情况下,软件功能测试不需要大量的数据,但是需要数据的覆盖率与真实度尽可能高;软件性能测试则需要大量的数据,并且数据量应当尽可能符合实际情况。

3️⃣ 实施软件测试

在执行测试用例的过程中,如果发现了错误和缺陷的话,应当记录并提交缺陷报告

实施软件测试的过程主要分为以下三个阶段

  • 初测期:测试主要功能与关键执行路径,排除主要障碍
  • 细测期:根据测试计划与测试用例,逐一测试所有的功能、特性、性能、界面、兼容性、可用性等测试点。
  • 回归测试期:软件已经趋于稳定,在测试过程中可以发现的新的错误与缺陷已经非常有限。此时应当复查已知错误与缺陷的纠正情况,确认未引入新的缺陷时即可终止回归测试

缺陷报告应当包括以下内容

  • 记录问题发生时的环境
  • 记录问题的重现步骤
  • 说明问题的性质
  • 给出相应的改进建议
  • 随时记录问题的处理进度

4️⃣ 测试评估与总结

评估软件产品质量、评估测试人员工作情况

总结测试情况,编写软件测试报告

三、软件测试计划

软件测试计划:指的是在软件测试工作正式实施前先行仔细研究测试对象,并且通过对资源、时间、风险、测试范围和预算等多方面因素进行综合分析与规划,以确保测试工作可以有效实施

软件测试计划的用途

  • 将过去总结的知识与经验转化为执行测试任务的具体方案。
  • 为组织、安排与管理测试项目提供整体框架。
  • 促进测试团队成员间开展有关任务与过程的交流。
  • 对项目风险进行分析,并得出相应的应对策略。

软件测试计划应当尽早制定,一般在软件需求文档确定后即开始制定测试计划。测试计划在整个的测试流程中处于 “核心位置”,是可以开展准备与执行测试工作的必要条件,是保证测试工作质量的根本基础

在制定软件测试计划后,应当由组织的测试经理(高级测试工程师)团队进行评审。在测试工作开展的过程中,应当时刻对照确认当前测试工作是否 “正在按照测试计划进行”。测试计划不是一成不变的,如果在实践过程中发现计划确实存在不足需要改进的话,应当进行调整与修改。

软件测试计划的基本结构

  1. 测试计划简介
  2. 测试项目说明
  3. 测试范围
  4. 测试手段和策略
  5. 项目通过或失败的标准
  6. 暂停与重启测试工作的标准
  7. 测试的可交付性
  8. 测试任务分配
  9. 环境需求
  10. 职责
  11. 人员与培训需求
  12. 进度表
  13. 风险与偶然事故的解决方案

注:此基本结构并非标准,仅为推荐。测试计划中的重要结构用加粗字体进行了标注。

软件测试计划的价值取决于其能够在多大的程度上帮助测试团队管理项目 / 发现错误与缺陷。不能为了制定计划而制定计划,不能简单的套用模板,这样是没有意义的。


下一章节:2.1 - 软件测试环境的备份与恢复