主要知识点
1、软件测试计划的作用
2、制订测试计划的原则
3、如何制订软件测试计划
4、制订测试计划时面对的问题
5、衡量一份好的测试计划的标准
6、制订测试计划
一、软件测试计划的作用
测试计划是描述所有要完成的测试工作,包括被测试项目的背景、目标、范围、方式、资源、进度安排、测试组织,以及与测试有关的风险等方面。主要有以下作用:
1、使软件测试工作进行更顺利
软件测试计划明确地将要进行的软件测试采用的模式、方池、步骤以及可能遇到的问题与风险等内容都做了考虑和计划,这样会使测试执行、测试分析和撰写测试报告的准备工作更加有效,使软件测试工作进行得更顺利。
2、增进项目参加人员之间的沟通
3、及早发现和修正软件规格说明书的问题
在编写软件测试计划的初期,首先要了解软件各个部分的规格及要求,这样需要仔细地阅读、了解规格说明书。在这个过程中,可能会发现其中出现的问题,例如规格说明书的论述前后矛盾、描述不完整等。对规格说明书中的缺陷越早修正,对软件开发的益处越大,因为规格说明书从一开始是软件开发工作的依据。
4、使软件测试工作更易于管理
制订测试计划的另一个目的,是要对整个软件测试工作采取系统化的方式来进行,这样会使软件测试上作更易于管理。测试计划包含两种主要的管理方式,一是上作分解结构,二是监督和控制。
二、制订测试计划的原则
1、制订测试计划应尽早开始。
2、保持测试计划的灵活性。
3、保持测试计划简洁易读。
4、尽量争取多方面来评审测试计划。
5、计算测试计划的投入。
三、如何制订软件测试计划
1、认真做好测试资料的搜集整理工作
重点是收集与技术信息相关的内容,主要有以下几部分:
1) 软件的类别及其构成。软件的类别及其构成是指软件的类别与用途(不同类的软件有不同的考虑重点)、软件的结构、软件所支持的平台以及软件的主要构成部分、各自功能及各部分之间的联系、每一构成部分所使用的计算机语言等信息。如果进行白盒测试,那么测试人员还要熟悉各部分已建立的函数库中的函数以及这些函数的用途和其输入、输出。
2) 软件的用户界面。用户界面的类别是指软件的用户界面风格类似windows软件,还是指令行软件,或是网而类软件。测试人员还需掌握用户界面各部分的功能、联系以及界面各织成部件的特性、操作特点等。
3) 在所测试的软件涉及第二方软件的情况下,必须对这个第三方软件的功能及其与所要测试的软件之间的联系有一定的了解
另外,需要搜集整理的信息还包括软件项目进展到现在主要存在的问题,测试工作需使用何种测试软件,使用何种缺陷报告软件,测试使用何种版本控制软件,哪些计算机是专门用于测试的,还有哪些关于这一软件产品的信息可供参考等。
2、明确测试的目标,增强测试计划的实用性
3、坚持“5W”规则,明确内容与过程
“5W”规则中的W分别是指“what(做什么)”、“why(为什么做)”、“when(何时做)”、“where(在哪里)”、“How(如何做)”。
4、采用评审和更新机制,保证测试计划满足实际需求
四、制订测试计划时面对的问题
1、与开发者的意见不一致。
2、缺乏测试工具。
3、培训不够。
4、管理部门缺乏对测试丁作的理解利支持。
5、缺乏用户的参与。
6、测试时间不足。
7、过分依赖测试人员。
8、测试人员处于进退两难的状态。
9、不得不说“不”。
五、衡量测试计划的标准
1、测试计划应能有效地引导整个软件测试工作正常运行,并能使测试部门配合编程部门,保证软件质量,按时将产品推出。
2、测试计划所提供的方法应能使测试高效地进行,即能在较短的时间内拔出尽可能多的软件缺陷。
3、测试计划应该能够提供明确的测试日标、测试策略、具体步骤以及测试标准。
4、测试计划既强调测试重点,也要重视测试的基本覆盖率。
5、测试计划所制定的测试方案尽可能充分利用公司可以提供给测试部门的人力物力资源,而且是可行的。
6、测试计划所列举的所有数据都必须是准确的,比如外部软件/硬件的兼容性所要求的数据、输入输出数据等。
7、测试计划对测试工作的安排应有一定的灵活性,使测试工作可以应付一些突然的变化情况,比如当需求发生变更时。
六、制订测试计划
IEEE829-1998软件测试文档编制标准
软件测试计划文档模板
目录
1、测试计划标识符
2、介绍
3、测试项
4、需要测试的功能
5、方法(策略)
6、不需要测试的功能
7、测试项通过/失败的标准
8、测试中断和恢复的规定
9、测试完成所提交的材料
10、测试任务
11、环境需求
12、测试人员的工作职责
13、人员安排与培训需求
14、进度表
15、潜在的问题和风险
16、审批
1、测试计划标识符
一个测试计划标识符是由公司生成的值,它用于标识测试计划的版木、等级以及测试计划相关的软件版本等。
2、简要介绍
测试计划的介绍部分主要是对测试软件基本情况的介绍和对测试范围的概括性描述。测试软件的基本情况主要包括产品规格(制造商和软件版本号的说明),软件的运行平台和应用的领域,软件的特点和主要的功能模块的特点,数据的存储、传递,每一个部分是怎么实现数据更新的以及一些常规性的技术要求,还要包括测试的侧重点。
3、测试项目
测试项目包括所测试软件的名称及版本,需要列出所有测试单项、外部条件对测试特性的影响和软件缺陷报告的机制等,具体要点如下:
1) 功能测试。理论上测试要覆盖所有的功能项,例如,在数据库中添加、记录等,这会是一项浩大的工程,但是有利于测试的完整性。
2) 设计测试。设计测试是检验用户界面、菜单结构、窗体设计等是否合理的测试。
3) 整体测试。整体测试需要测试数据从软件中的一个模块流到另一个模块过程中的正确性。
IEEE标准中指出,可以参考下面的文档来完成测试项目:
1) 需求规格说明。
2) 用户指南。
3) 操作指南。
4) 安装指南。
总的来说,测试需要分析软件的每一部分,明确其是否需要测试,并说明理由。
4、测试对象
测试计划的这一部分需要列出待测的单项功能及功能组合。这部分内容与测试项目不同。测试项目是从开发者或程序管理者的角度计划测试项目,而测试对象是从用户的角度规划测试的内容。
5、不需要测试的对象
测试计划的这一部分需要列出不测试的单项功能及组合功能,并说明不予测试的理由。
6、测试方法(策略)
这部分内容是测试计划的核心所在,需要给出有关测试方法的概述以及每个阶段的测试方法。这部分内容主要描述如何进行测试,并解释对测试成功与否起决定作用的所有相关问题。
7、测试项通过/失败的标准
这部分需要给出“测试项目”中描述的每一个测试项通过或失败的标推。正如每个测试用例都简要一个预期的结果一样,每个测试项目也同样都需要一个预期的结果。
一般来说,通过或失败的标准是由通过/失败的测试用例,缺陷的数量、类型、严重性和位置,可靠性或稳定性等来描述的。随着测试等级的不同和测试组织的不同,所采用的确切标准也会不同。下面是一些常见指标:
1) 通过的测试用例占所有测试用例的比例
2) 缺陷的数量、严重程度和分布情况。
3) 测试用例覆盖情况。
4) 用户对测试的成功结论。
5) 文档的完整性。
6) 是否达到性能标准。
8、中断测试和恢复测试的判断准则
常用的测试中断标准如下:
1) 关键路径存在未完成任务。
2) 大量的缺陷。
3) 严重的缺陷。
4) 测试环境不完整。
5) 资源短缺。
9、测试完成所提交的材料
主要包含测试工作中开发设计的所有文档、工具等。例如,测试计划、测试设计规格说明、测试用例、测试日志、测试数据、自定义工具、测试缺陷报告和测试总结报告等。
10、测试任务
测试计划中这一部分需要给出测试前的准备工作以及测试工作所需完成的?系列任务。
11、测试所需的资源
1) 人员
2) 设备特性
3) 办公或实验空间
4) 软件
5) 其他资源如U盘、通信设备、参考书等
6) 特殊测试工具
12、测试人员的工作职责
任务列于左边,可能的执行者列于表格右方,x表示任务的执行者,“一”表示任务的参加者,空白表示测试人员不负责该任务。
13、人员安排与培训需求
14、测试进度表
15、风险及应急措施
在软件测试中常见的潜在问题和风险如下:
1) 由于设备、网络等资源限制,测试工作不全面。
2) 由于研发模式为现场定制,且上线时间压力大,测试工作不充分。
3) 不现实的交付日期。
4) 系统之间的接口不完善。
5) 处理巨额现金的特征。
6) 软件极其复杂。
7) 有过缺陷历史的模块。
8) 发生过许多复杂变更的模块。
9) 安全性、性能和可靠性问题。
10) 难于变更或测试的特征。
16、审批
审批人应该是有权宣布已经为转入下一个阶段做好准备的某个人或某几个人。测试计划审批部分一个重要的部件是签名页。审批人除了在适当的位置签署自己的名字和日期外,还应该签署表明他们是否建议通过评审的意见。