功能测试案例编写指引V10资料.docx
- 文档编号:26179556
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:17
- 大小:30.03KB
功能测试案例编写指引V10资料.docx
《功能测试案例编写指引V10资料.docx》由会员分享,可在线阅读,更多相关《功能测试案例编写指引V10资料.docx(17页珍藏版)》请在冰豆网上搜索。
功能测试案例编写指引V10资料
功能测试案例
编写指引
V1.0
类别
文件名:
功能测试案例编写指导
版本号:
V1.0
版本日期:
作者:
单位:
日期:
文档版本
版本
日期
注释
V1.0
编制
许可
职务
签名
日期
审核
1目的
为了使项目开发人员与测试人员了解功能测试案例编写的方法及要求,特编写此文档,以作指导之用。
2范围
本规范适用于项目开发组全体人员、质量检测组所有检测人员,作用于项目开发的测试案例编写阶段。
3术语
Ø测试案例:
为达到最佳的测试结果或高效地揭露隐藏的错误而精心设计的测试数据,称之为测试案例。
这种数据具有代表性或特殊性。
4原则
4.1案例编写依据
测试案例编写主要依据有以下文档:
Ø需求说明及相关文档
Ø相关的设计说明(概要设计,详细设计等)
Ø已经基本成型的UI,即Demo
4.2案例组织方式
Ø案例可以根据功能进行分类,然后按照系统工作方式,依据主工作流程和辅助工作流程进行组织。
案例可以进行归纳整理,整理的最小单位为最小不可拆分模块。
如:
登陆模块,包含的案例可能为密码校验,帐户合法性校验,系统掉线处理等子测试案例,但是可以认为登陆操作是个不可再分的最小测试案例模块,其中包含很多的子测试案例。
Ø案例可以根据功能工作流程分类,按照系统工作流程将所有测试案例分派完毕,达到可对系统检验的目的。
5编写要求
5.1测试案例组成元素
每一条测试案例应包括以下元素,格式参见附件1《测试案例》。
Ø项目/软件名称
Ø软件版本
Ø项目负责人
Ø功能模块名
Ø功能项:
指的是功能模块中的子模块名,即测试的功能点
Ø功能特性:
简述需测试的功能项所具备的功能与相关制约条件
Ø测试类别:
选择“功能测试”
Ø测试目的:
简述对功能项执行测试所要达到的目的
Ø测试数据:
执行测试的前置条件(即案例执行前必须输入的数据)
Ø相关案例:
依赖或受其影响的其他案例
Ø参考信息:
测试案例来源(如,XX文档中关于XX功能的说明)
Ø编制人员
Ø编制日期
Ø开发人员
Ø测试人员
Ø测试日期
Ø回归测试
Ø操作编号:
用于引用和定位测试案例的标识符(以“Step+数字”作为命名规则)
Ø角色:
执行该测试案例的使用者身份(如:
系统管理员,普通用户等)
Ø功能描述:
所测功能点的简要说明,即该案例执行的目的或方法
Ø用例描述:
包括执行本案例必须要满足的条件、案例执行的详细操作步骤
Ø输入数据:
列举送到软件执行测试案例的所有输入内容或条件。
每个数字值、击键或手工操作都属于输入数据
Ø预期输出:
执行测试案例预期的结果
Ø测试结果:
实际执行输出的结果
Ø测试状态(P/F):
通过或不通过(P/F)
5.2总体要求
编写测试案例,要求以下几点:
Ø功能描述和用例描述要简单清晰。
Ø案例中所有测试数据应详细描述。
Ø案例要求覆盖范围要广,各种可能性都要覆盖到。
Ø案例内容应包括输入和输出的合法/非法检验,边界检验,和所有可能出现的条件组合与路径组合。
6案例覆盖面
Ø字符合法与非法校验
Ø长度或个数边界校验
Ø各种条件
Ø各条路径
7设计方法
测试案例设计方法:
等价类划分、边界值分析、因果图
7.1等价类划分方法
7.1.1简述
等价类划分是一种典型的黑盒测试方法,这一方法完全不考虑程序的内部结构;其指一套被选择的值,这些值分别代表了许多众多的可能输入值,程序对其处理的方式都是一样的。
等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭示程序中的错误都是等效的。
等价类合理地假设:
某个等价类的代表值,与该等价类的其他值,对于测试来说是等价的;也就是说,如果该代表值发现了错误,这一等价类中的其他值也能发现同样的错误。
因此,可以把全部的输入数据划分成若干的等价类,在每一个等价类中取一个数据来进行测试。
这样就能以较少的具有代表性的数据进行测试,而取得较好的测试效果。
7.1.2划分原则
等价类的划分有两种不同的情况:
Ø有效等价类:
是指对于程序的需求说明来说,是合理的,有意义的输入数据所构成的集合;利用它可以检验程序是否实现了预期的功能;
Ø无效等价类:
是指对于程序的需求说明来说,是不合理的,没有意义的输入数据所构成的集合;利用它可以检验程序对于无效数据的处理能力。
7.1.3划分组合
等价类的划分通常包括以下几种组合:
(1)合法/非法的输入和输出
(2)对数值型的值分为正数、负数和0
(3)对于字符串型的分为空串和非空串
7.2边界值分析方法
7.2.1简述
边界值分析也是一种黑盒测试方法,是等价类划分的扩展,它不是选择等价类的任意元素,而是选择等价类边界的测试案例。
边界值通常是等价类的界限,以正好小于、等于和大于界限的指作为边界值。
实践证明,大量的错误是发生在输入或输出的边界上。
因此针对各种边界情况设计测试案例,可以查出更多的错误。
7.2.2选择原则
Ø如果输入条件规定了取值范围,则应该取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据。
Ø如果输入条件规定了值的个数,则应该用最大个数、最小个数、及稍大于最大个数、稍小于最小个数的数做为测试输入数据。
Ø针对每个输出条件使用以上两条原则。
Ø如果输入域或输出域是有序集合(如有序表、顺序文件等),则应选取有序集合的第一个和最后一个元素作为测试数据;如报表的第一和最后一行;数组元素的第一个和最后一个。
Ø分析需求说明与设计等文档,找出其他可能的边界条件。
7.3因果图法
7.3.1简述
等价类划分方法和边界值分析方法都是着重考虑输入条件,但未考虑输入条件的各种组合,也没考虑到各个输入条件之间的相互制约关系。
因果图法是指从需求说明文档与设计文档找出因(输入条件)和果(输出或程序状态的改变),通过因果图(逻辑模型)转换成判定表,以达到检查程序输入条件的各种组合情况。
7.3.2分析步骤
(1)分析需求说明文档与设计文档,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并且找出原因与结果之间,原因与原因之间对应的关系,根据这些关系,画出因果图。
通常用Ci表示原因,Ai表示结果。
(3)由于语法或环境的限制,有些原因与原因之间,原因与结果之间的组合情况不不可能出现,为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。
(4)把因果图转换为判定表;表中各结点表示状态可取值“0”和“1”,“0”表示状态不出现,“1”表示状态出现。
(5)把判定表的每一列提取为测试数据,设计测试案例。
8实例
8.1字符、长度校验
Windows文件名可以包含除了\/:
*?
"<>和|之外的任意字符;文件名长度是1-255个字符。
由以上可得知,等价区间包含合法字符、非法字符、合法长度的名称、过长名称、过短名称、空名称;其中有效等价区间为合法字符与合法程度的名称,无效等价区间为非法字符、过长名称、过短名称与空名称。
操作编号
功能描述
用例名
用例描述
预期输出
测试结果
测试状态(P/F)
建议
回归测试状态
1
建立文件名
Step1合法字符
角色:
操作者
前提:
除\/:
*?
"<>和|外的任意字符
输入数据:
操作步骤:
命名成功
2
建立文件名
Step2非法字符
角色:
操作者
前提:
\/:
*?
"<>或|
输入数据:
操作步骤
命名不成功,提示相应信息
3
建立文件名
Step3合法长度的名称
角色:
操作者
前提:
输入数据:
1个或255合法字符
操作步骤:
命名成功
4
建立文件名
Step4过长名称
角色:
操作者
前提:
输入数据:
256个合法字符
操作步骤:
命名不成功,提示相应信息
5
建立文件名
Step5过短名称
角色:
操作者
前提:
输入数据:
空串
操作步骤:
命名不成功,提示相应信息
8.2路径组合覆盖
IfA>0then
B=b
Else
B=c
操作编号
功能描述
用例名
用例描述
预期输出
测试结果
测试状态(P/F)
建议
回归测试状态
1
使B等于b
Step1A>0
角色:
操作者
前提:
输入数据:
A=2
操作步骤:
B=b
2
使B等于c
Step2A<0
角色:
操作者
前提:
输入数据:
A=-2
操作步骤:
B=c
3
使B等于c
Step3A=0
角色:
操作者
前提:
输入数据:
A=-2
操作步骤
B=c
8.3条件组合覆盖
(1)年薪制员工:
严重过失,扣年终风险金的4%;过失,扣年终风险金的2%
(2)非年薪制员工:
严重过失,扣当月薪资的8%;过失,扣当月薪资的4%
首先,列出原因和结果,如下表
原因
结果
C1-年薪制员工
A1-扣年终风险金的4%
C2-非年薪制员工
A2-扣年终风险金的2%
C3-严重过失
A3-扣当月薪资的8%
C4-过失
A4-扣当月薪资的4%
然后,绘出因果图,如下所示
最后,转换为判定表,如下所示
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
C1
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
C2
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
C3
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
C4
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
A1
0
0
0
0
0
0
1
1
A2
0
0
0
0
0
1
0
1
A3
0
0
1
1
0
0
0
0
A4
0
1
0
1
0
0
0
0
TC
Y
Y
Y
Y
Y
Y
Y
Y
判定表中TC标记为Y每一列就是测试案例。
操作编号
功能描述
用例名
用例描述
预期输出
测试结果
测试状态(P/F)
建议
回归测试状态
操作编号
1
月薪统计
依据非年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
非年薪制员工既没有过失也没有严重过失
操作步骤:
不用扣除当月薪资
2
月薪统计
依据非年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
非年薪制员工有过失
操作步骤
扣当月薪资的4%
3
月薪统计
依据非年薪制员工的过失情况进行扣薪
非年薪制员工有严重过失
扣当月薪资的8%
4
月薪统计
依据非年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
非年薪员工既有过失也有严重过失操作步骤
扣当月薪资的4%;并扣当月薪资的8%
5
月薪统计
依据年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
年薪制员工既没有过失也没有严重过失操作步骤
不用扣除年终风险金
6
月薪统计
依据年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
年薪制员工有过失
操作步骤
扣年终风险金的2%
7
月薪统计
依据年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
年薪制员工有严重过失操作步骤
扣年终风险金的4%
8
月薪统计
依据年薪制员工的过失情况进行扣薪
角色:
操作者
前提:
输入数据:
年薪制员工既有过失又有严重过
操作步骤
扣年终风险金的2%;并扣年终风险金的4%
附件测试案例(模版)
测试案例
项目/软件名称:
软件版本:
项目负责人:
功能模块名:
功能项:
功能特性:
测试类别:
□功能测试□用户界面测试□性能测试□负载测试□兼容性测试
测试目的:
测试数据:
相关案例:
参考信息:
(如,XX文档中关于XX功能的说明)
编制人员:
编制日期:
开发人员:
测试人员:
测试日期:
回归测试:
□有□无
操作编号
功能名
用例名
用例描述
预期输出
测试结果
测试状态(P/F)
建议
回归测试状态
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 功能 测试 案例 编写 指引 V10 资料