软件测试第二次作业
第2章 黑盒测试
一、填空题
1、等价类划分就是将输入数据按照输入需求划分为若干个子集,这些子集称为_等价类_______。
2、等价类划分法可将输入数据划分为__有效等价类______和____无效等价类____。
3、___边界值分析法_____通常作为等价类划分法的补充。
4、因果图中的___恒等_____关系要求程序有一个输入和一个输出,输出与输入保持一致。
5、因果图的多个输入之间的约束包括__E(互斥)______、___O_(唯一)____、__R(要求)______、______I_(包括)_四种。
6、决策表通常由_条件桩_______、___条件项_____、___动作桩_____、__动作项______四部分组成。
二、判断题
1、有效等价类可以捕获程序中的缺陷,而无效等价类不能捕获缺陷。(× )
2、如果程序要求输入值是一个有限区间的值,可以划分为一个有效等价类(取值范围)和一个无效等价类(取值范围之外)。(× )
3、使用边界值方法测试时,只取边界两个值即可完成边界测试。(× )
4、因果图考虑了程序输入、输出之间的各种组合情况。( √)
5、决策表法是由因果图演变而来的。( √)
6、正交实验设计法比较适合复杂的大型项目。( √)
三、单选题
1、下列选项中,哪一项不是因果图输入与输入之间的关系。( A)
A、恒等
B、或
C、要求
D、唯一
2、下列选项中,哪一项是因果图输出之间的约束关系。(C )
A、异
B、或
C、强制
D、要求
3、下列选项中,哪一项不是正交实验法的关键因素。( D)
A、指标
B、因子
C、因子状态
D、正交表
四、简答题
1、请简述一下等价类划分法的原则。
(1)如果程序要求输入值是一个有限区间的值,则可以将输入数据划分为一个有效等价类和两个无效等价类,有效等价类为指定的取值区间,两个无效等价类分别为有限区间两边的值。
(2)如果程序要求输入的值是一个“必须成立”的情况,则可以将输入数据划分为一个有效等价类和一个无效等价类。
(3)如果程序要求输入数据是一组可能的值,或者要求输入值必须符合某个条件,则可以将输入数据划分一个有效等价类和一个无效等价类。
(4)如果在某一个等价类中,每个输入数据在程序中的处理方式都不相同,则应将该等价类划分成更小的等价类,并建立等价表。
2、请简述一下决策表条件项的合并规则。
在实际测试中,条件桩往往很多,而且每个条件桩都有真假两个条件项,有n个条件桩的决策表就会有2n条件规则,有些规则的取值对结果并无影响,这个问题就称为无关条件项,无关条件项使用“-”表示,忽略无关条件项,可以将这两条规则进行合并。合并之后的无关条件项(-)包含其他条件项取值,因此具有相同动作的规则还可进一步合并。
3、请简述正交实验设计法测试用例设计步骤。
1,提取因子,构造因子状态表
2,加权筛选,简化因子 - 状态表
3,构建正交表,设计测试用例
大题标准答案:
1、等价类划分原则:
(1)如果程序要求输入值是一个有限区间的值,则可以将输入数据划分为一个有效等价类和两个无效等价类,有效等价类为指定的取值区间,两个无效等价类分别为有限区间两边的值。
(2)如果程序要求输入的值是一个“必须成立”的情况,则可以将输入数据划分为一个有效等价类和一个无效等价类。
(3)如果程序要求输入数据是一组可能的值,或者要求输入值必须符合某个条件,则可以将输入数据划分一个有效等价类和一个无效等价类。
(4)如果在某一个等价类中,每个输入数据在程序中的处理方式都不相同,则应将该等价类划分成更小的等价类,并建立等价表。
2、在实际测试中,条件桩往往很多,而且每个条件桩都有真假两个条件项,有n个条件桩的决策表就会有2n条件规则,有些规则的取值对结果并无影响,这个问题就称为无关条件项,无关条件项使用“-”表示,忽略无关条件项,可以将这两条规则进行合并。合并之后的无关条件项(-)包含其他条件项取值,因此具有相同动作的规则还可进一步合并
3、正交实验设计法测试用例设计步骤。
(1)提取因子,构造因子状态表
分析软件的规格需求说明得到影响软件功能的因子,确定因子可以有哪些取值,即确定因子的状态。
(2)加权筛选,简化因子-状态表
在实际软件测试中,软件的因子及因子的状态会有很多,每个因子及其状态对软件的作用也大不相同,如果把这些因子及状态都划分到因子-状态表中,则最后生成的测试用例会相当庞大,从而影响软件测试的效率。因此需要根据因子及状态的重要程度进行加权筛选,选出重要的因子与状态,简化因子-状态表。
加权筛选就是根据因子或状态的重要程度、出现频率等因素计算因子和状态的权值,权值越大,表明因子或状态越重要,而权值越小,表明因子或状态的重要性越小。加权筛选之后,可以去掉一部分权值较小的因子或状态,使得最后生成的的测试用例集缩减到允许的范围。
(3)构建正交表,设计测试用例
正交表的表示形式为Ln(tc)来表示。
l L表示正交表。
l n为正交表的行数,正交表的每一行可以设计一个测试用例,因此行数n也表示可以设计的测试用例的数目。
l c表示正交实验的因子数目,即正交表的列数,因此正交表是一个n行c列的表。
l t称为水平数,表示每个因子能够取得的最大值,即因子有多少个状态。