黑盒测试用例设计指南V10.docx
- 文档编号:2909801
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:13
- 大小:70.19KB
黑盒测试用例设计指南V10.docx
《黑盒测试用例设计指南V10.docx》由会员分享,可在线阅读,更多相关《黑盒测试用例设计指南V10.docx(13页珍藏版)》请在冰豆网上搜索。
黑盒测试用例设计指南V10
测试用例设计指南
目录
1.目的和范围3
2.术语和缩写3
3.黑盒测试用例设计方法3
3.1.黑盒测试定义3
3.2.穷举测试方法的不可行性3
3.3.测试用例设计生成的基本准则4
3.4.良好测试用例的特征4
3.5.黑盒测试用例的设计方法4
3.5.1.等价类划分5
3.5.2.划分等价类和列出等价类表5
3.5.3.确定等价类的原则5
3.5.4.建立等价类表6
3.5.5.确定测试用例6
3.5.6.举例6
3.5.7.边界值分析法8
3.5.8.边界值设计原则8
3.5.9.其他一些边界条件8
3.5.10.状态转换图8
3.5.11.场景法9
3.5.12.基本流和备选流9
3.5.13.用例场景9
3.5.14.测试方法选择的综合策略10
4.回归测试10
4.1.回归测试定义10
4.2.回归测试用例库的一些建议10
4.3.自动化回归测试的主要工作内容11
4.3.1.回归测试环境搭建自动化11
4.4.回归测试策略11
5.参考文献12
1.目的和范围
本文档对测试用例的常用设计方法进行了阐述和举例,供文思海辉集团内测试人员设计测试用例时参考。
2.术语和缩写
术语和缩写
描述
测试用例
为某一特定目的或测试需求(条件)而开发的一套输入值、执行前置条件、预期结果、执行后置条件,用以运行某一特定程序路径或验证是否符合某一特定需求。
黑盒测试
测试功能或非功能,不考虑组件或系统的内部结构。
等价类划分
一种测试设计技术,从等价类中选择有代表的设计测试用例,原则上测试用例至少覆盖各分区一次。
边界值分析
一种测试设计技术,建立在边界值的基础上设计测试用例。
因果图
一种测试设计技术,从因果图导出测试用例。
判定表测试
一种测试设计技术,设计测试用例执行判定表里的输入和或原因的组合。
状态转换测试
一种测试设计技术,设计测试用例执行有效的和无效的状态转换。
回归测试
当发生变更时,按照变更测试先前已经测试过的程序保证没有新的缺陷引入到软件没有变化的部分。
当软件或软件环境变化时执行该测试。
3.黑盒测试用例设计方法
3.1.黑盒测试定义
这种方法是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。
黑盒测试又叫做功能测试或数据驱动测试。
3.2.穷举测试方法的不可行性
假设一个程序P有输入量X和Y及输出量Z。
在字长为32位的计算机上运行。
若X、Y取整数,按黑盒方法进行穷举测试:
可能采用的测试数据组:
232×232=264
如果测试一组数据需要1毫秒,一年工作365×24小时,完成所有测试需5亿多年。
因为我们不可能进行穷举测试,为了节省时间和资源、提高测试效率,必须要从数量极大的可用测试数据中精心挑选出具有代表性或特殊性的测试数据来进行测试。
3.3.测试用例设计生成的基本准则
●测试用例的代表性:
能够代表并覆盖各种合理的和不合理、合法的和非法的、边界的和越界的、以及极限的输入数据、操作和环境设置等;
●测试结果的可判定性:
即测试执行结果的正确性是可判定的,每一个测试用例都应有相应的期望结果;
●测试结果的可再现性:
即对同样的测试用例,系统的执行结果应当是相同的。
3.4.良好测试用例的特征
●最有可能抓住错误的;
●不是重复的、冗余的;
●本类用例中最佳的选择;
●既不过于复杂,又不过于简单。
3.5.黑盒测试用例的设计方法
具体的黑盒测试用例设计方法包括等价类划分法、边界值分析法、场景法、错误推测法、因果图法、判定表驱动法、状态转换图、正交试验设计法等。
这些方法是比较实用的,但采用什么方法,在使用时自然要针对开发项目的特点对方法加以适当的选择。
3.5.1.等价类划分
等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的需求和说明,即需求规格说明书。
由于穷举测试工作量太大,以致于无法实际完成,促使我们在大量的可能数据中选取其中的一部分作为测试用例。
等价类划分法是把程序的输入域划分成若干部分,然后从每个部分中选取少数代表性数据当作测试用例。
每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错误,则这一类中的其他例子也不会查出错误。
使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上划分等价类,列出等价类表。
3.5.2.划分等价类和列出等价类表
可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分有两种不同的情况:
有效等价类:
是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
无效等价类:
与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。
因为软件不仅要能接收合理的数据,也要能经受意外的考验。
这样的测试才能确保软件具有更高的可靠性。
3.5.3.确定等价类的原则
在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。
在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类。
3.5.4.建立等价类表
在确立了等价类之后,建立等价类表,列出所有划分出的等价类:
输入条件
有效等价类
无效等价类
……
……
……
……
……
……
3.5.5.确定测试用例
根据已列出的等价类表,按以下步骤确定测试用例:
●为每个等价类规定一个唯一的编号;
●设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。
重复这一步,最后使得所有有效等价类均被测试用例所覆盖;
●设计一个新的测试用例,使其只覆盖一个无效等价类。
重复这一步使所有无效等价类均被覆盖。
3.5.6.举例
根据下面给出的规格说明,利用等价类划分的方法,给出足够的测试用例。
“一个程序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。
这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。
”
●我们可以设三角形的3条边分别为A,B,C。
如果它们能够构成三角形的3条边,必须满足:
●A>0,B>0,C>0,且A+B>C,B+C>A,A+C>B。
●如果是等腰的,还要判断A=B,或B=C,或A=C。
●如果是等边的,则需判断是否A=B,且B=C,且A=C。
输入条件
有效等价类
无效等价类
是否三角形的三条边
(A>0),
(1)
(B>0),
(2)
(C>0),(3)
(A+B>C),(4)
(B+C>A),(5)
(A+C>B),(6)
(A≤0),(7)
(B≤0),(8)
(C≤0),(9)
(A+B≤C),(10)
(B+C≤A),(11)
(A+C≤B),(12)
是否等腰三角形
(A=B),(13)
(B=C),(14)
(C=A),(15)
(A≠B)and(B≠C)and(C≠A)(16)
是否等边三角形
(A=B)and(B=C)and(C=A)
(17)
(A≠B),(18)
(B≠C),(19)
(C≠A),(20)
序号
【A,B,C】
覆盖等价类
输出
1
【3,4,5】
(1),
(2),(3),(4),(5),(6)
一般三角形
2
【0,1,2】
(7)
不能构成三角形
3
【1,0,2】
(8)
4
【1,2,0】
(9)
5
【1,2,3】
(10)
6
【1,3,2】
(11)
7
【3,1,2】
(12)
8
【3,3,4】
(1),
(2),(3),(4),(5),(6),(13)
等腰三角形
9
【3,4,4】
(1),
(2),(3),(4),(5),(6),(14)
10
【3,4,3】
(1),
(2),(3),(4),(5),(6),(15)
11
【3,4,5】
(1),
(2),(3),(4),(5),(6),(16)
非等腰三角形
12
【3,3,3】
(1),
(2),(3),(4),(5),(6),(17)
是等边三角形
13
【3,4,4】
(1),
(2),(3),(4),(5),(6),(14),(18)
非等边三角形
14
【3,4,3】
(1),
(2),(3),(4),(5),(6),(15),(19)
15
【3,3,4】
(1),
(2),(3),(4),(5),(6),(13),(20)
3.5.7.边界值分析法
由测试工作的经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。
因此针对各种边界情况设计测试用例,可以查出更多的错误。
边界值分析是一种补充等价划分的测试用例设计技术,它不是选择等价类的任意元素,而是选择等价类边界的测试用例。
实践证明为检验边界附近的处理专门设计测试用例,常常取得良好的测试效果。
3.5.8.边界值设计原则
对边界值设计测试用例,应遵循以下几条原则:
●如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
●如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少一、比最大个数多一的数作为测试数据。
●根据规格说明的每个输出条件,使用前面的原则1。
●根据规格说明的每个输出条件,应用前面的原则2。
●如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。
●如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。
●分析规格说明,找出其他可能的边界条件。
3.5.9.其他一些边界条件
另一种看起来很明显的软件缺陷来源是当软件要求输入时(比如在文本框中),不是没有输入正确的信息,而是根本没有输入任何内容,单单按了Enter键。
这种情况在产品说明书中常常忽视,程序员也可能经常遗忘,但是在实际使用中却时有发生。
程序员总会习惯性的认为用户要么输入信息,不管是看起来合法的或非法的信息,要不就会选择Cancel键放弃输入,如果没有对空值进行好的处理的话,恐怕程序员自己都不知道程序会引向何方。
正确的软件通常应该将输入内容默认为合法边界内的最小值或者合法区间内某个合理值,否则返回错误提示信息。
因为这些值通常在软件中进行特殊处理,所以不要把它们与合法情况和非法情况混在一起,而要建立单独的等价区间。
3.5.10.状态转换图
状态转换图是一个用来描述系统设计和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 黑盒 测试 设计 指南 V10