软件测试规范面面观(2)- 测试计划

软件研发生命周期

在说明软件测试计划应如何制定之前,我们先熟悉下软件研发生命周期的定义:

软件开发生命周期(Software Development Life Cycle,SDLC) 包含了软件从开始到发布的不同阶段。它定义了一种用于提高待开发软件质量和效率的过程。因此,SDLC旨在通过最少的资源,交付出高质量的软件。为了避免产生严重项目失败后果,软件开发的生命周期通常可以被划分为计划、需求分析、软件设计、软件实现、测试集成、维护 六大阶段:

SDLC

从SDLC中我们可以看出,软件测试是软件研发生命周期的重要一部分,而软件项目的研发首先都是从制订计划开始。这里测试计划也是软件项目计划的一个组成部分。

测试计划的重要性

在最新的 ISO/IEC/IEEE 29119-3 标准中对测试计划的定义如下:

测试计划(Test plan): 描述测试为实现某个测试目标而执行的活动、任务和资源的文件。它提供了测试过程的蓝图,定义了测试工作的框架与指导,是管理测试工作的基础。

古人云:“凡事预则立,不预则废”,又云:“谋定而后动”。都是说我们做事预先计划的重要性。在软件测试中也是一样,只有在进入测试执行阶段之前,预先计划和确认好实施测试的相关原则、方法、资源和产出,才能保证我们后续的测试能够顺利开展。
本文的目的也就是讨论我们在计划阶段应该考虑和确认哪些因素并体现到测试文档中。
敏捷宣言中虽然有一条:

工作的软件高于详尽的文档

但是,测试计划文档的重要性在于,计划模板中会包含很多计划要素,依照这些要素去思考和准备后续的软件测试,可以避免一些重要事项的遗漏。

测试计划的主要构成

还是在ISO/IEC/IEEE 29119-3 标准中,对测试计划的主要构成也提供的详细的说明。以下我们就参考该标准来详细说明这些要素。(这里是一个比较全面的构成介绍,实际项目运作不用拘泥形式,根据项目自身实际情况进行裁剪即可

文档信息

测试计划文档信息主要是用于文档本身的规范化管理要求的。一般会包含如下关信息:

  • 文档标题 如:XXX项目XX版本测试计划
  • 文档编写日期
  • 文档状态 如:草稿、审核、发布等
  • 文档版本 文档本身的版本历史
  • 编写者及组织信息
  • 文档评审、签署人员
  • 文档变更历史记录

总体介绍

这部分主要说明当前测试的背景信息和介绍。

  • 被测对象产品介绍,行业背景知识,测试的总体要求等。
  • 参考文档的清单:比如需求文档、原型设计、系统架构、操作手册、安装手册、接口说明等等
  • 术语、缩略语对照表

测试目标

这部分会重点说明当前测试的目标。

测试范围

这部分是测试计划中非常重要的部分,是明确当前测试的目标边界的。一般又会明确说明 In ScopeOut Scope 两部分,即明确哪些内容是本次测试需要覆盖的以及明确无法覆盖的。
一般确定测试范围的话,如In Scope的:

  • 新增产品特性需求
  • 历史版本的遗留bug修复
  • 当前版本进行的技术实现优化
  • 数据结构变更的验证
    ...... 等等
    而out scope的也需要根据项目讨论明确下来,举例如:
  • 安全加固相关的变更不包含在当前测试计划中
  • 老旧历史版本(如3年前)的兼容
  • 特定依赖的测试,如无法获取的测试设备相关的验证,经项目确认可以移出测试计划
  • ....
测试类型

当前计划需要覆盖的测试类型,比如功能测试、性能测试、兼容性测试、文档测试、安装部署测试、安全测试、兼容性测试、可靠性测试等等。说明相关类型的主要目的。

约束和假定

说明当前测试计划的一些预置条件和可能的约束。比如项目计划节点的有效性,人员、设备等资源的到位情况,需求变化情况,第三方关联系统的有效性等

干系人和合作方

测试中的干系人。哪些人这个测试计划的交付对象。
测试中的合作方。测试过程中需要和那些人协作,协作方式和沟通渠道

风险说明

根据项目的风险评估,列出当前跟测试相关的风险清单。又分项目风险和产品风险。
风险清单中列出的风险一般应包含这些要素:

  • 识别出的风险说明
  • 风险影响分析
  • 风险级别的评估 (严重程度、发生概率、可识别概率)
  • 当前对风险的已有举措
  • 后续的风险消除方案

测试策略

测试方法

针对前面的测试类型,总体说明相应测试类型的主要测试方法,使用的测试工具,需要准备的测试数据和数据生成方案等

测试环境

这部分说明实施测试的测试环境要求,需要的设备资源情况(如移动应用测试需要准备的手机型号、web应用的服务器资源、网络环境),使用的测试工具等等

测试输出

列出测试过程中有哪些输出物,所存放的路径. 如

  • 测试计划
  • 测试方案
  • 测试用例/集
  • 测试数据
  • 自动化测试脚本
  • 测试状态报告
  • 测试总结报告
  • ......
测试准入/准出标准

明确实施测试的开始和结束标准。比如准入要求单元测试通过率 95%,产品功能已完整开发并经过集成测试等。准出要求没有Critical的defect,遗留defect的总加权值不超过设定值等。
(这部分后续文章还会详细介绍)

测试暂停/重启标准

明确暂停测试和重启测试的标准。暂停和重启会影响后续的Schedule排期,所以有必要在计划阶段就明确说明。举例来说比如出现影响测试继续进行的严重bug会触发暂停,当相关bug解决后可以触发重启。

测试人员

参与测试实施的人员名单和相关职责说明,在项目期间的投入工作量估算。如有人力缺口或能力培训需求,在这一部分需要说明相关的计划。

测试计划分解

根据前述测试方案和人力,对后续测试过程进行任务分解和估算。这里不仅要考虑到实施阶段的测试任务,也应包含计划、设计阶段的任务分解和估算。一般包括:

  • 计划阶段的目标、scope的确认
  • 需求的评审、澄清,测试方案的整理
  • 测试用例设计、工具准备、数据准备、自动化测试开发
  • 测试执行阶段的多轮测试:新功能测试、全量回归、bug验证、发布、升级验证,发布后验证
  • 测试报告输出
  • 日常的状态更新、测试过程数据的收集

以上就是测试计划的主要构成。测试计划编写完成一般需要经过数轮和项目团队的评审和确认,作为后续测试实施的参考依据。
但大家理解测试计划的主要作用和定义这些构成要素的背后逻辑,实际项目操作也可以根据项目实际情况进行一些裁剪,而不是因为追求教条式的完备计划而投入大量精力。

一页测试计划示例

其实随着敏捷的推行,我们也可以在迭代阶段采用一些轻量级的计划模板,关注到核心要素。下面就是两个一页纸的计划模板,大家可以参考:


one page plan - 1

one page plan - 2
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容