软件测试与质量保证4 黑盒测试

目录

黑盒测试

概念

特点

等价类方法

原理

划分等价类

弱一般等价类测试

强一般等价类测试

弱健壮等价类测试

强健壮等价类测试

总结

边界值方法

作用

边界值原理与思想

一般边界值

 健壮性测试

最坏情况测试

最坏健壮性测试

特殊值测试

 随机测试

决策表方法

组成部分

三角形问题决策表

总结


黑盒测试

概念

黑盒测试,又称为功能测试或数据驱动测试,把测试对象当作看不见内部的黑盒。要求导出执行程序所有功能需求的输入条件集,实现功能覆盖。

黑盒测试是在软件的接口处进行测试。

特点

  • 如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。
  • 黑盒测试不能替代白盒测试,而是用来发现白盒测试以 外的其他类型的错误。

等价类方法

原理

测试的目的是进行完备的测试,同时避免测试用例冗余。等价类测试是通过每个等价类中的一个元素标识测试用例,降低测试用例的冗余性。

划分等价类

  • 等价类是指某个输入域的子集合
  • 等价类的划分有两种不同的情况
  • 设计测试用例时,要同时考虑有效等价类和无效等价类设计

等价类测试重复边界值测试的两个决定因素,即健壮性单/多缺陷假设

等价类测试的关键,就是选择确定的等价关系,必须区分弱等价类强等价类。

弱一般等价类测试

弱一般等价类测试是单缺陷假设

软件测试与质量保证4 黑盒测试

强一般等价类测试

强一般等价类测试基于多缺陷假设,因此,需要等价类笛卡尔积的每个元素对应的测试用例。

软件测试与质量保证4 黑盒测试

 

弱健壮等价类测试

单缺陷条件假设,考虑无效值的等价类测试。

  • 对于有效输入,使用每个有效类的一个值。
  • 对于无效输入,测试用例将拥有一个无效值,并保持其余的值 都是有效的。

软件测试与质量保证4 黑盒测试

强健壮等价类测试

多缺陷条件假设,从所有等价类笛卡尔积的每个元素中获得测试用例。

软件测试与质量保证4 黑盒测试

总结

  1. 等价类测试的弱形式不如强形式的测试全面
  2. 如果错误条件非常重要,有必要进行健壮形式的测试 
  3. 如果输入数据以离散值区间和集合定义,则等价类测试是合 适的
  4. 通过结合边界值测试,等价类测试可以得到加强
  5. 如果函数很复杂,需要做等价类测试
  6. 强等价类测试假设变量是独立的,相应的测试用例相乘会引起冗余问题。如果存在依赖关系,则常常会生成错误的测试 用例  
  7. 在确定合适的等价关系之前,可能需要进行多次尝试 
  8. 强和弱形式的等价类测试之间的差别,有助于区分累进测试 和回归测试

边界值方法

作用

边界值分析是对等价类划分方法的补充。

从测试工作经验得知,大量的错误是发生在输 入或输出范围的边界上,而不是在输入范围的内部。

边界值原理与思想

程序是函数

输入:函数的定义域

输出:函数的值域

使用的输入变量是

  • min,min+
  • nom
  • max-,max

一般边界值

单缺陷假设 :一个变量取极值,其他所有变量去正常值。

对于有N个变量的 函数,边界值分析 产生4N+1个测试用例。

软件测试与质量保证4 黑盒测试

 健壮性测试

增加极限值:max+,min-

一个变量取极值,其他所有变量取正常值

对于有N个变量的函数,产生 6N+1个测试用例.

软件测试与质量保证4 黑盒测试

最坏情况测试

多个变量取极值:对每个变量 ,包含min,min+,nom,max-max集合的测试

然后再对这些集合做 笛卡尔积运算,生成测试用例

N个变量:软件测试与质量保证4 黑盒测试个测试 用例

软件测试与质量保证4 黑盒测试

最坏健壮性测试

对于最坏情况测试的健壮性测试,采用健壮性测试的七 元素集合的笛卡尔积作为测试用例。

软件测试与质量保证4 黑盒测试

特殊值测试

特殊值测试大概是运用得最广泛的一种功能性测试。当测试人员使用其领域知识、使用类似程序的经验以及关于“软点”信息开发测试用例时,会出现特殊值测试。

 特殊测试特别依赖测试人员的能力。尽管特殊值测试是 高度主观性的,但是所产生的测试用例集合,常常更能有效地发现缺陷。

 随机测试

随机测试的思想是:不是永远选取有界变量的最小值、略高于最小值、正常值、略低于最大值和最大值,而是使用随机数生成器选出测试用例值。

这个程序持续生成随机测试用例,直到每种输出至少出现一次。

决策表方法

在所有功能性测试方法中,基于决策表的测试方法是最严格的,因为决策表具有逻辑严格性。

组成部分

决策表有四个部分:桩部分、条目部分、条件部分、行动部分。

例如:

软件测试与质量保证4 黑盒测试

使用决策表标识测试用例,能够保证一种完备的测试

为了使用决策表标识测试用例,我们把条件解释为输入,把行动解释为输出。

三角形问题决策表

软件测试与质量保证4 黑盒测试

注意:不关心条目和不可能规则

总结

决策表技术适用于以下特征的应用程序:

  • IF-THEN-ELSE逻辑突出
  • 输入变量之间存在逻辑关系
  • 涉及输出变量子集的计算
  • 输入与输出之间存在因果关系

决策表不能很好地伸缩,需要使用扩展条目决策表、代数简化表,将大表分解成小表

可以使用迭代技术,逐渐改进,直到得到满意的决策表