Chapter2 黑盒测试

1、黑盒测试基本观点

   任何程序都可以看作是从输入定义域到输出值域的映射。

   在这种观点将被测程序看作一个打不开的黑盒,黑盒里面的内容(实现)是完全不知道的,只知道软件要做什么。

   因为无法看到盒子中的内容,所以不知道软件是如何实现的,也不关心黑盒里面的结构,只关心软件的输入数据和输出结果。

 

2、黑盒测试两个显著的优点:

  (1)黑盒测试并不是依靠软件实现,即使实现已经改变,测试用例仍然可用。

  (2)黑盒测试用例可以同时被设计,实现。这就降低了成本,缩短了发展时期。

 

3、常用的黑盒测试方法有等价类划分、边界值分析、决策表测试。

 

4、等价类划分

  所谓等价类是指输入域的某个互不相交的子集合,所有等价类的并集便是整个输入域。目的在于测试用例的无冗余性。

 

5、划分等价类( valid / invalid 

1)有效等价类:检验程序是否实现了规格说明预先规定的功能和性能。

2)无效等价类:检查软件功能和性能的实现是否有不符合规格说明要求的地方。

 

6、等价类测试用例设计

1)在确立了等价类之后,可列出所有划分出的等价类表。

2)为每一个等价类规定一个唯一的编号。

3)设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步,直到测试用例覆盖了所有的有效等价类。

4)设计一个新的测试用例,使其覆盖且只覆盖一个尚未覆盖的无效等价类。重复这一步,直到测试用例覆盖了所有的无效等价类。

 

7、边界值分析法

   大量的软件测试实践表明,故障往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。

   设计及编程时,往往由于规格说明的不明确或编程者的疏忽,造成边界条件的错误。

   大部分边界条件的错误是由于不同人对于某些条件文字描述的理解是不同的,例如:以上,以下等。

 

8、因果图法

   等价类划分法和边界值分析方法都是着重考虑输入条件,如果程序输入之间没有什么联系,采用等价类划分和边界值分析是一种比较有效的方法。如果输入之间有关系,例如,约束关系、组合关系,这种关系用等价类划分和边界值分析是很难描述的,测试效果难以保障,因此必须考虑使用一种适合于描述对于多种条件的组合,产生多个相应动作的测试方法,因果图正是在此背景下提出的。

 

9、因果图法测试用例的设计步骤:

  (1)确定软件规格(需求)中的原因和结果

  (2)确定原因和结果之间的逻辑关系

  (3)确定因果图中的各个约束(constraints)

  (4)画出因果图并转换为决策表

  (5)根据决策表设计测试用例

10、决策表法

   决策表是把作为条件的所有输入的各种组合值以及对应输出值都罗列出来而形成的表格。

   它能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用决策表能够设计出完整的测试用例集合。

  在所有的黑盒测试方法中,基于决策表的测试是最严格,最具有逻辑性的测试方法。决策表法虽然最严格,最具有逻辑性,但是它所花费的时间也是最长的。一旦需要测试的数据过多,决策表会变得很大,花费的时间也会很多,得不偿失。

 

11、构造决策表可采用以下5个步骤:

  (1)列出所有的条件桩和动作桩。

  (2)确定动作规则(条件项)的个数。

  (3)填入条件项。

  (4)填入动作项,得到初始决策表。

  (5)简化决策表,合并相似规则。(可以利用卡诺图)

想了解卡诺图,请点这里http://baike.haosou.com/doc/6331801-6545412.html

posted on 2015-03-19 20:54  2班&王艺蓉  阅读(220)  评论(0编辑  收藏  举报