设计测试用例:

  第一步,分析软件说明,将输入和输出分别列出,并赋予一个的标志符;

  第二步,分析语义和设计,将输入和输出之间的对应关系和各自之间的联系列出来,画出因果图;

  第三步,根据逻辑分析,从因果图中将不可能出现的情况移除;添加约束和限定条件;

  第四步,将因果图转换为判定表;

  第五步,根据判定表的每一列,设计一个新用例。

  说明:

  从因果图生成测试用例,包括了所有输入数据的取false和取true的情况,生成的测试用例数目达到少。测试用例的数目是随着输入数据量的增加而增加。

  判定表驱动分析方法

  含义:

  因果图可以生成判定表,但是也可以直接使用判定表。判定表(Decision Table)是列举和分析复合逻辑条件下多个路径的工具。主要是通过一个二维表格一目了然的将负责的逻辑结构和多种条件组合的情况表达出来。

  组成:

  条件桩(Condition Stub),列出所有条件。通常认为条件的次序是无关的。

  动作桩(Action Stub),列出所有可能采取的动作,这些操作是没有次序约束的。

  条件项(Condition Entry),列出针对它左列条件的取值。在所有坑能情况下的真假值。

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

  规则:

  是任何一个条件组合的特定取值及其相应要执行的操作。在判定表中,贯穿条件项和动作项的一列是一条规则。

  判定表的建立步骤:

  第一步,确定规则的个数,例如:有n个条件,每个条件可取值为0和1,则有2n个规则。

  第二步,列出所有的条件桩和动作桩。

  第三步,填入条件项。

  第四步,填入动作项。得到初始判定表。

  第五步,简化合并详细规则。

  可以使用判定表的条件:

  1)软件说明本身是以判定表形式给出的。

  2)条件的排列顺序步影响执行那些操作。

  3)规则的排列顺序不影响执行哪些操作。

  4)每当某一规则的条件满足,即可确定要执行操作,不受其他规则影响。

  5)如果某一个规则的条件得到满足需要执行多个操作,这些操作的顺序应该是无关的。