📜  软件测试中基于决策表的测试

📅  最后修改于: 2022-05-13 01:57:00.387000             🧑  作者: Mango

软件测试中基于决策表的测试

什么是决策表:

决策表用于各种工程领域来表示复杂的逻辑关系。该测试是测试软件及其需求管理的非常有效的工具。输出可能取决于许多输入条件,决策表给出了输入条件的各种组合的表格视图,这些条件的形式为 True(T) 和 False(F)。此外,它还提供了测试所需的一组条件及其相应的操作。

部分决策表:

软件测试中,决策表有 4 个部分,分为以下几部分:

  1. 条件存根:条件列在决策表的左上角,用于确定特定操作或一组操作。
  2. 动作存根:所有可能的动作都在决策表的左下部分(即条件存根下方)给出。
  3. 条件条目:在条件条目中,将值输入到决策表的右上方。 在表的条件条目部分,有多个行和列,称为规则。
  4. 动作条目:在动作条目中,每个条目在决策表的右下部分都有一些关联的动作或一组动作,这些值称为输出。

决策表的类型:

决策表分为两种类型,如下所示:

  1. 有限条目:在有限条目决策表中,条件条目被限制为二进制值。
  2. 扩展条目:在扩展条目决策表中,条件条目具有两个以上的值。决策表使用多个条件,其中一个条件可能有许多可能性,而不是只有“真”和“假”被称为扩展条目决策表。

决策表的适用性:

  • 规则评估的顺序对结果操作没有影响。
  • 决策表只能在单元级别轻松应用。
  • 一旦满足规则并选择了操作,就需要检查另一个规则。
  • 这些限制并没有消除许多应用程序。

基于决策表的测试示例:

下面是程序的决策表,用于确定三个数字中的最大值,其中输入是正整数的三元组(x、y 和 z),值来自区间 [1, 300]。

表 1:三个数字中最大的决策表:

ConditionsR1R2R3R4R5R6R7R8R9R10R11R12R13R14
c1: x > = 1?FTTTTTTTTTTTTT
c2: x <= 300? FTTTTTTTTTTTT
c3: y > = 1?  FTTTTTTTTTTT
c4: x <= 300?   FTTTTTTTTTT
c5: z > = 1?    FTTTTTTTTT
c6: z <= 300?     FTTTTTTTT
c7: x>y?      TTTTFFFF
c8: y>z?      TTFFTTFF
c9: z>x?      TFTFTFTF
Rule Count256128643216811111111
a1 : Invalid inputXXXXXX        
a2 : x is largest       X X    
a3 : y is largest          XX  
a4 : z is largest        X   X 
a5 : Impossible      X      X