各位学员大家好,大家在学习软件测试基础知识时,黑盒测试用例设计方法经常考察。为了让大家快速掌握这方面的知识点,接下来就带领大家一起来学习一下!
例题:根据输入输出等价类边界上的取值来设计用例的黑盒测试方法是( )
A、等价类划分法
B、因果图法
C、边界值分析法
D、场景法
【昊洋详解】:本题考查黑盒测试用例设计方法的基础知识。
常见的黑盒测试用例一共有八中,他们分别是:
1)、等价类划分法:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
2)、边界值分析法:是在等价类的基础上,对输入或输出的边界值进行测试的一种黑盒测试方法。根据大量的测试统计数据,很多错误是发生在输入或输出范围的边界上,而不是发生在输入或输出范围的中间区域。因此针对各种边界情况设计测试用例,可以查出更多的错误。在任何情况下都要采用边界值分析法!因为边界值分析法设计的测试用例更有可能发现程序中的缺陷,所以经常和其他测试用例方法结合起来使用。
3)、错误猜测法:错误推测法是基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。例如输入数据和输出数据为0的情况;输入表格为空格或输入表格只有一行等。 这些都是容易发生错误的情况,可选择这些情况下的例子作为测试用例。
4)、因果图法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。
5)、判定表驱动法:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。又称“决策表”,是一种呈表格状的图形工具,适用于描述处理判断条件较多且条件又相互组合、有多种决策方案的情况。精确而简洁描述复杂逻辑的方式,将多个条件与这些条件满足后要执行动作相对应。但不同于传统程序语言中的控制语句,决策表能将多个独立的条件和多个动作直接的联系清晰的表示出来。在所有的黑盒测试方法中,基于决策表的测试是最严格,最具有逻辑性的测试方法。
6)、正交实验法:根据正交性原理,从大量的实验数据中挑选适量的,有代表性的点(这些点具备了“均匀分散,整齐可比”的特点),合理地安排测试的一种科学实验设计方法,是研究多因素多水平的一种设计方法。简而言之就是,使用已经造好了的表格正交表来安排试验并进行数据分析的一种方法。该方法简单易行并且计算表格化,应用性较好。
7)、功能图法:其实是一种灰盒测试(兼有黑盒和白盒测试的特性)用例设计方法。通常情况一个程序的功能说明通常由动态说明和静态说明组成。动态说明描述了输入数据的次序或转移的次序;静态说明描述了输入条件与输出条件之间的对应关系。用功能图形象地表示程序的功能说明,并机械地生成功能图的测试用例。对于较复杂的程序,由于存在大量的组合情况,仅用静态说明组成的规格说明对于测试来说往往是不够的,必须用动态说明来补充功能说明。
8)、场景法:从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景。通过运用场景来对系统的功能点或业务流程进行描述,从而提高测试效果。
题干中说根据输入输出等价类边界上的取值来设计用例,显然是边界值分析法,故该题目的正确答案为C。
(1)通过遍历用例的路径上基本流和备选流的黑盒测试方法是( )。
A、等价类划分法
B、因果图法
C、边界值分析法
D、场景法
(2)以下关于因果图法测试的叙述中,不正确的是( )。
A、因果图法是从自然语言书写的程序规格说明中找出因和果
B、因果图法不一定需要把因果图转成判定表
C、为了去掉不可能出现的因果组合,需要标明约束条件
D、如果设计阶段就采用了判定表,则不必再画因果图
(3)以下关于等价类划分法的叙述中,不正确的是()。
A、如果规定输入值string1必须是‘\0’结束,那么得到两个等价类,即有效等价类{string1|string1以‘\0’结束},无效等价类{string1|string1不以‘\0’结束};
B、如果规定输入值int1取值为1、-1两个数之一,那么得到3个等价类,即有效等价类{int1|int1=1}、{int1|int1=-1}无效等类价类{int1|int1≠1 并且int1≠-1};
C、如果规定输入值int2取值范围为-10~9,那么得到的两个等价类,即有效等价类{int2| -10<=int2<=9},无效等价类{int2|int2<-10或者>9};
D、如果规定输入值int3为质数,那么得到两个等价类,即有效等价类{int3|int3是质数},无效等价类{int3| int3 不是质数};
(1)解析:本题考查黑盒测试方法的基础知识。
选项涉及到的黑盒测试用例设计方法在例题中都有详解。题目说通过遍历用例的路径上基本流和备选流,在场景法从一个流程开始,通过描述经过的路径来确定的过程,经过遍历所有的基本流和备用流来完成整个场景;通过运用场景来对系统的功能点或业务流程进行描述,从而提高测试效果:场景法=基本流+备用流。
故该题目的正确答案为:D。
(2)解析:本题考查黑盒测试用例设计方法中因果图法的基础知识。
因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况。等价类划分法和边界值分析方法都是着重考虑输入条件,但没有考虑输入条件的各种组合、输入条件之间的相互制约关系。这样虽然各种输入条件可能出错的情况已经测试到了,但多个输入条件组合起来可能出错的情况却被忽视了。
因果图法设计测试用例的步骤为:
1)、提取因果,赋予标识符:分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件), 并给每个原因和结果赋予一个标识符。
2)、提取因果关系,表示因果图:分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的关系,根据这些关系,画出因果图。
3)、标明约束条件:由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不可能出现,为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。
4)、转换成判定表:把因果图转换为判定表。
5)、设计测试用例:把判定表的每一列拿出来作为依据,设计测试用例。因果图法需要转换成判定表,然后再设计测试用例。
综上所述,因果图法是需要把因果图转成判定表的,但如果设计阶段就采用了判定表,则不必再画因果图,因为判定表法也是一种黑盒测试用例设计的方法。故该题目的正确答案为:B。
(3)解析:划分等价类的7条原则:
1)、确定了输入条件取值范围或者值的个数,则可以确立一个有效等价类和两个无效等价类。
2)、输入条件规定了输入值的集合,例如条件中规定了“必须如何”的绝对条件,可确立一个有效等价类和一个对立的无效等价类。
3)、输入条件是一个布尔量,可确定一个有效等价类和一个无效等价类。
4)、规定了输入数据的一组值,假定n个,并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
5)、在规定了输入数据必须遵守的规则的情况下,可确立一个符合规则的有效等价类和若干个从不同角度违反规则无效等价类。
6)、如果某个输入条件规定输入数据是整型,那么可以确定3个有效等价类(正整数,零和负整数)和一个无效等价类(非整数)。
7)、如果某个输入条件规定处理的对象是表格,那么可以确定一个有效等价类(表有一项或多项)和一个无效等价类(空表)。
C选项中如果规定输入值int2取值范围为-10~9,那么按照划分等价类的第一条原则:确定了输入条件取值范围或者值的个数,则可以确立一个有效等价类和两个无效等价类。所以可以得到的3个等价类,即一个有效等价类{int2| -10<=int2<=9},两个无效等价类{int2|int2<-10}和{int2|int2>9}。故该题目的正确答案为C。
写于2020年10月29日
作者:昊洋讲师
版权所有,侵权必究