黑盒测试方法---理论

黑盒测试方法(功能测试):

 

1. 等价类的划分方法:有效值等价类等价

                    无效值等价类等价

必须包含两个方面的等价类等价测试。

等价类是子集代表全集的测试,等价类子集的必须不相交。

 

等价类的划分方法(6种方法)

(1)有效值表示的是一个范围,划分成一个有效等价类跟两个无效等价类。这两个无效等价类的划分方法分别是在左右两个边界值之外的值。

(2)输入条件是一个规定确定好的集合,设计一个有效值等价类和一个无效值等价类。

(3)布尔值的情况,一个有效等价类和一个无效等价类。

(4)输入值是一组值(N个),每个数据元素都要进行处理,设计等价类时是N有效等价类和一个无效等价类。

(5)输入情况必须是符合某些规则,则设计是一个有效等价类和N个无效等价类。

在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。

********************************************************************

(6)等价类中不同的子集有对应不同的处理结果,这时处理等价类划分成更小的子等价类。

 

黑盒测试方法 --------- 等价类划分

2. 如何根据等价类法设计测试用例。

 根据等价类划分出有效等价类跟无效等价类完成等价类表设计。

(1)为每个等价类确定唯一的编号。

(2)设计测试用例覆盖所有的有效等价类。

要求: 设计一个测试用例,这样尽可能多的完成有效的覆盖,循环执行。

(3)设计测试用例覆盖所有的无效等价类

方法操作:设计一个测试用例使它覆盖一个无效等价类的值,执行循环操作,完成所有无效等价类中值的测试。

第一步:划分等价类

第二步:设计有效等价类需要的测试用例

第三步:为每一个无效等价类至少设计一个测试用例。

 

黑盒测试方法 ------- 边界值方法

边界值的划分方式,最小值,最小值的右趋近,正常值, 最大值,最大值的左趋近。

边界值中的5种值的测试用例的设计。

 

黑盒测试方法 ------- 组合(条件组合法)

 

黑盒测试方法  -------- 因果图法

 

设计思想是根据输入的条件组成组合,得到结果,这个是重要的。加上考虑条件组合之间的制约关系,就是更准确的定位。

因果图 ----------转化成判定表。这个不是理论,实践完成。判定表的每一列设计成一个一个测试用例。

 

因果图测试步骤:(输入条件)是因,输出条件是果,输入条件的有效组合得到对应的果。

 

1)分析软件规格说明描述中,哪些是原因 (即输入条件或输入条件的等价类),哪些是结果 (即输出条件),并给每个原因和结果赋予一个标识符;

2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系根据这些关系,画出因果图; 

3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件;

4)把因果图转换成判定表;

5)把判定表的每一列拿出来作为依据,设计测试用例。

 

限制,制约的原因:

       之所以有限制、制约是因为有的组合条件是无法成立的条件。

 

因果图画法:

重点:使用逻辑与或非相等完成。

因果图图示:

 

 

 

 

 

 

 

   

 

 

当原因是多条输入条件的时候,会产生条件之间的相互制约关系,这样的话会得出不同的结果。

 

因果图中基本图形介绍

 (1E约束(异):ab中至多有一个可能为1,即ab

                                    可能同时为1

2I约束(或): abc中至少有一个必须为1,即a

                                    bc不能同时为 0

3O约束(唯一):ab中必须有一个,且仅有一个为1

4R约束(要求):a1时,b必须是1,即不可能出现a

                                        是1时,b是 0

5M约束(强制):如果结果a1,则结果b强制为0a为零

                                    时,b值不定.

注意:15中只有5是对结果的约束。

 

其中,第4步,把因果图转化成判定表,有条件桩,动作桩(结果桩),条件项,结果项。

 表示: 1为真,0为假。

条件桩(Condition Stub:列出了问题得所有条件.通常认为列出得条件的次序无关紧要.

动作桩(Action Stub:列出了问题规定可能采取的操作.这些操作的排列顺序没有约束.

条件项(Condition Entry:列出针对它左列条件的取值.在所有可能情况下的真假值.

动作项(Action Entry:列出在条件项的各种取值情况下应该采取的动作.

下图分析:

 中间11的条件设计,编号为11的结点是导出结果的进一步原因。这个中间原因件特别注意:

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

如何完成 从因果图到判定表的设计:这个是操作的重点,难点!

 

黑盒测试方法 ------- 决策表测试

决策表中输入,输出的条件和结果是多条的情况下。判定表 结果之后一项。

 

判定表

判定表(Decision Table),又叫决策表

判定表是分析和表达多逻辑条件下执行不同操作的工具。

规则:

任何一个条件组合的特定取值及其相应要执行的操作称为规则;

在判定表中贯穿条件项和动作项的一列就是一条规则;

判定表中列出多少组条件取值,也就有多少条规则,即条件项和动作项有多少列。

 

规则合并

规则合并就是判定表的简化。

有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系,就可以将规则合并。

 

判定表建立的步骤:

根据软件规格说明

①列出所有的条件桩和动作桩;

②确定规则的个数;

假如有n个条件,每个条件有两个取值(0,1,则有2n 种规则; 

③填入条件项;

④填入动作项,得到初始决策表;

⑤简化,合并相似规则(相同动作)。

 

因果图得到的判定表跟直接根据需求分析得到的判定表的比较:

 

前者可以直接得到“有效地判定表”,后者得到的先是2^n的条件桩动作桩,需要化简合并这部的处理。

 

***判定表技术适用的应用程序的特征:

if-then-else逻辑很突出

输入变量之间存在逻辑关系

涉及输入变量子集的计算

输入与输出之间存在因果关系

 

7. 黑盒测试方法 ------ 正交测试法

 

描述:

正交试验设计是研究多因素多水平的一种设计方法,它是根据正交性从全面试验中挑选出部分有代表性的点进行试验,这些有代表性的点具备了“均匀分散,齐整可比”的特点,正交试验设计是一种基于正交表的、高效率、快速、经济的试验设计方法

正交表的构成

行数(Runs):正交表中的行的个数,即试验的次数。

因素数(Factors):欲考察的变量数目,即正交表中列的个数。

水平数(Levels):变量取值的最大个数。

正交表的表示形式: L行数(水平数因素数

 

步骤:

1 >有哪些因素(变量)

2 >每个因素有哪几个水平(变量的取值)

3 >选择行数最少的正交表

4 >把变量的值映射到表中

5 >把每一行的各因素水平的组合做为一个测试用例

6 >加上你认为可疑且没有在表中出现的组合

 

 

 

 

8. 黑盒测试方法 ------ 场景法设计

 

基本流:是流经用例的最简单路径;

备选流:自基本流开始,之后会在某特定条件下执行;

可能重新加入基本流(流1,3

可能起源于另一备选流(流

终止用例不再重新加入某个流。(流2,流4

 

9. 黑盒测试方法 ------ 错误推测发

 

错误推测法的概念:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。

错误推测方法的基本思想:列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据它们选择测试用例。例如:

在单元测试时曾列出的许多在模块中常见的错误、以前产品测试中曾经发现的错误等,这些就是经验的总结。

还有,输入数据和输出数据为0的情况、输入表格为空格或输入表格只有一行等。这些都是容易发生错误的情况,可选择这些情况下的例子作为测试用例。

 

10. 总结:黑盒测试方法的策略选择:

 

通常在确定测试策略时,有以下5条参考原则:

**首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作量和提高测试效率最有效的方法。

 **在任何情况下都必须使用边界值分析方法。经验表明,用这种方法设计出的测试用例发现程序错误的能力最强。

**采用错误推断法再追加测试用例,这需要依靠测试工程师的智慧和经验。 

**对照程序逻辑,检查已设计出的测试用例的逻辑覆盖  程度。如果没有达到要求的覆盖标准,则应当再补充更多的测试用例。

**如果程序的功能说明中含有输入条件的组合情况,则应一开始就选用因果图法和判定表驱动法。

**对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。

**对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。

 

设计测试用例的时候,首先用等价类划分得到有限的条件,结果,边界值是一定要测的,逻辑覆盖条理强要首先选择因果图,判定表的设计方法,正交试验有用公式设计,行数的计算,因子数,水平数的设计计算得到。场景流的方法操作,依据就是事件驱动整个用例的流程性。接着就是经验法的错误推断方法补充。

  • 2
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值