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

  (1)边界值分析方法的考虑:

  长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。

  使用边界值分析方法设计测试用例,首先应确定边界情况。通常输入和输出等价类的边界,是应着重测试的边界情况。应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。

  (2)基于边界值分析方法选择测试用例的原则:

  1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。

  2)如果输入条件规定了值的个数,则用大个数,小个数,比小个数少一,比大个数多一的数作为测试数据。

  3)根据规格说明的每个输出条件,使用前面的原则1)。

  4)根据规格说明的每个输出条件,应用前面的原则2)。

  5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和后一个元素作为测试用例。

  6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。

  7)分析规格说明,找出其它可能的边界条件。

  错误推测法

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

  错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例。 例如, 在单元测试时曾列出的许多在模块中常见的错误。

  以前产品测试中曾经发现的错误等, 这些是经验的总结。 还有, 输入数据和输出数据为0的情况。 输入表格为空格或输入表格只有一行。 这些都是容易发生错误的情况。 可选择这些情况下的例子作为测试用例。

  因果图方法

  前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等。 考虑输入条件之间的相互组合,可能会产生一些新的情况。 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多。 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。 这需要利用因果图(逻辑模型)。

  因果图方法终生成的是判定表。 它适合于检查程序输入条件的各种组合情况。

  利用因果图生成测试用例的基本步骤:

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

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

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

  (4) 把因果图转换为判定表。

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

  从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到少,且测试用例数目随输入数据数目的增加而线性地增加。