【黑盒测试的测试用例的设计方法】

  • 等价类划分
  • 边界值分析
  • 错误推测法
  • 因果图
  • 功能图

 

》等价类划分:即将所有可能的输入数据划分成若干部分(子集),然后从每个子集中选取少量具有代表性的数据作为测试用例。

      等价类有两种不同的情况:有效等价类和无效等价类。设计时要同时考虑这两种等价类。

【6条确定等价类的原则】

  1. 在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
  2. 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,则可以确立一个有效等价类和一个无效等价类。
  3. 在输入条件是一个布尔量的情况下,可以确立一个有效等价类和一个无效等价类。
  4. 在规定输入数据的一组值(假定N个),并且程序要对每个输入值分别处理的情况下,可以确立n个有效等价类和一个无效等价类。
  5. 在规定了输入数据必须遵守的规则的情况下,可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
  6. 在确定已划分的等价类中各元素在程序中处理的方式不同的情况下,则应将该等价类进一步的划分为更小的等价类。

【从已划分出的等价类中按照以下的3个原则设计测试用例】

  1. 为每个等价类规定一个唯一的编号。
  2. 设计一个新的测试用例,使其尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止。
  3. 设计新的测试用例,使其仅覆盖一个尚未被覆盖无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。

【实例如下】

三角形问题:

某程序规定:“输入三个整数a,b,c分别作为三边的边长构成三角形。通过程序判断所构成的三角形的类型,当次三角形为一般三角形、等腰三角形、等边三角形时,分别作计算。(用等价类划分法为该程序进行测试用例的设计)

 分析题目中给出的和隐含的输入条件的要求:(1)整数 (2)三个数 (3)非零数 (4)正数 (5)两边之和大于第三边 (6)等腰  (7)等边

 如果a,b,c满足条件(1)~(4)则输出下列四种情况之一:

  1. 如果不满足(5),则程序输出为”非三角形“
  2. 如果三条边相等即满足条件(7),则程序输出为”等边三角形“
  3. 如果只有两边相等,即满足条件(6),则程序输出为”等腰三角形“
  4. 如果三条边都不相等,则程序输出为”一般三角形“

 列出等价类并编号:

覆盖有效等价类的测试用例:

a  b  c    覆盖等价类号码

3  4  5    1  7

4  4  5    1  7  8

4  5  5    1  7  9

4  4  4    1  7  11

覆盖无效等价类的测试用例:

 

 

 

posted on 2012-09-25 11:29  @雨欣@  阅读(417)  评论(1)    收藏  举报