精华内容
参与话题
问答
  • 黑盒测试方法|测试用例的设计方法–判定表驱动分析方法 目录 等价类划分方法 边界值分析方法 错误推测方法 因果图方法 判定表驱动分析方法 正交实验设计方法 功能图分析方法 场景设计方法 判定表驱动...

    黑盒测试方法|测试用例的设计方法–判定表驱动分析方法

    目录

    判定表驱动分析方法

    一、方法简介
    1、定义
    判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。

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

    在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类问题。

    3、“阅读指南”判定表
    在这里插入图片描述
    4、判定表通常由四个部分组成如下图所示。
    在这里插入图片描述

    名称 解释
    条件桩(Condition Stub) 列出了问题得所有条件。通常认为列出的条件的次序无关紧要
    动作桩(Action Stub) 列出了问题规定可能采取的操作。这些操作的排列顺序没有约束
    条件项(Condition Entry) 列出针对它左列条件的取值。在所有可能情况下的真假值
    动作项(Action Entry) 列出在条件项的各种取值情况下应该采取的动作

    5、规则及规则合并
    规则:任何一个条件组合的特定取值及其相应要执行的操作称为规则。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,既条件项和动作项有多少列。

    化简:就是规则合并有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系。

    6、规则及规则合并举例
    (1)如下图左端,两规则动作项一样,条件项类似,在1、2条件项分别取Y、N时,无论条件3取何值,都执行同一操作。即要执行的动作与条件3无关。于是可合并。“-”表示与取值无关。
    在这里插入图片描述
    (2)与上类似,下图中,无关条件项“-”可包含其他条件项取值,具有相同动作的规则可合并。
    在这里插入图片描述
    (3)化简后的读书指南判定表

    1 2 3 4
    问题 你觉得疲倦吗? - - Y N
    问题 你对内容感兴趣吗? Y Y N N
    问题 书中内容使你胡涂吗? Y N - -
    建议 请回到本章开头重读 x
    建议 继续读下去 X
    建议 跳到下一章去读 x
    建议 停止阅读,请休息 x

    7、判定表的建立步骤(根据软件规格说明)

    1. 确定规则的个数.假如有n个条件。每个条件有两个取值(0,1),故有2n种规则。
    2. 列出所有的条件桩和动作桩。
    3. 填入条件项。
    4. 填入动作项。等到初始判定表。
    5. 简化.合并相似规则(相同动作)。

    二. 、例子
    (1)例子1
    问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义 。请建立判定表。

    解答:
    ①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有222=8种规则。

    ②列出所有的条件茬和动作桩:
    在这里插入图片描述
    ③填入条件项。可从最后1行条件项开始,逐行向上填满。如第三行是: Y N Y N Y N Y N,第二行是: Y Y N N Y Y N N等等。

    ④填入动作桩和动作顶。这样便得到形如图的初始判定表。
    在这里插入图片描述

    ⑤化简。合并相似规则后得到图。
    在这里插入图片描述

    (2)例子2
    NextData函数的精简决策表

    M1={月份, 每月有30天}
    M2={月份, 每月有31天}
    M3={月份, 2月} 有29=512条规则
    D1={日期,1~28} 12月末31日和其它31
    D2={日期,29} 日月份的31日处理不同
    D3={日期,30} 平年2月28日处理不同
    D4={日期,31} 于2月27日
    Y1 ={年:年是闰年}
    Y2 ={年:年不是闰年}

    改进为

    M1={月份: 每月有30天}
    M2={月份: 每月有31天, 12月除外}
    M4={月份:12月}
    M3={月份: 2月}
    D1={日期:1<=日期<=27}
    D2={日期:28}
    D3={日期:29}
    D4={日期:30}
    D5={日期:31}
    Y1 ={年:年是闰年}
    Y2 ={年:年不是闰年}

    输入变量间存在大量逻辑关系的NextData决策表
    在这里插入图片描述

    (3)例子3
    用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。

    例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。

    1. 分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。
    2. 分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。
    3. 根据(1)和(2),画出简化后的决策表。

    分析如下:
    (1)month变量的有效等价类

    month变量的有效等价类
    M1: {month=4,6,9,11}
    M2: {month=1,3,5,7,8,10}
    M3: {month=12}
    M4: {month=2}

    (2)day变量的有效等价类

    day变量的有效等价类
    D1:{1≤day≤26}
    D2: {day=27}
    D3: {day=28}
    D4: {day=29}
    D5: {day=30}
    D6: {day=31}

    (3)year变量的有效等价类

    year变量的有效等价类
    Y1: {year是闰年}
    Y2: {year不是闰年}

    (4)考虑各种有效的输入情况,程序中可能采取的操作有以下六种:

    序号 操作
    a1 day+2
    a2 day=2
    a3 day=1
    a4 month+1
    a5 month=1
    a6 year+1

    4、判定表在功能测试中的应用
    (1)一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一个不错的工具。如果一个软件的规格说明指出:

    1. 当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1。
    2. 在任一个条件都不满足时,要执行操作2。
    3. 在条件1不满足,而条件4被满足时,要执行操作3。 根据规格说明得到如下判定表:
      在这里插入图片描述
      这里,判定表只给出了16种规则中的8种。事实上,除这8条以外的一些规则是指当不能满足指定的条件,执行3种操作时,要执行1个默许的操作。在没必要时,判定表通常可略去这些规则。但如果用判定表来设计测试用例,就必须列出这些默许规则(如下表)。
      在这里插入图片描述

    (2)判定表的优点和缺点

    1. 优点:它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏。
    2. 缺点:不能表达重复执行的动作,例如循环结构。

    (3)B. Beizer 指出了适合使用判定表设计测试用例的条件

    1. 规格说明以判定表形式给出,或很容易转换成判定表。
    2. 条件的排列顺序不会也不影响执行哪些操作。
    3. 规则的排列顺序不会也不影响执行哪些操作。
    4. 每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。
    5. 如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。

    B. Beizer提出这5个必要条件的目的是为了使操作的执行完全依赖于条件的组合。其实对于某些不满足这几条的判定表,同样可以借以设计测试用例,只不过尚需增加其它的测试用例罢了。

    展开全文
  • 判定表驱动分析方法

    2019-10-04 06:58:14
    判定表分析和表达多逻辑条件下执行不同操作的情况的工具。 2.判定表的优点 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。在一些数据处理...

    一、方法简介

    1.定义:

    判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。

    2.判定表的优点

    能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。判定表适合于处理这类问题。

    3.阅读指南:判定表

     

    1

    2

    3

    4

    5

    6

    7

    8

    问题

    觉得疲倦吗?

    Y

    Y

    Y

    Y

     

     

     

     

    感兴趣吗?

    Y

    Y

     

     

    Y

    Y

     

     

    糊涂吗?

    Y

     

    Y

     

    Y

     

    Y

     

    建议

    重读

     

     

     

     

    Y

     

     

     

    继续

     

     

     

     

     

    Y

     

     

    跳下一章

     

     

     

     

     

     

    Y

    Y

    休息

    Y

    Y

    Y

    Y

     

     

     

     

     

    4.判定表通常由四个部分组成,如下图所示:

     

    1)        条件桩(Condition Stub):列出了问题的所有条件。通常认为列出的条件的次序无关紧要。

    2)        动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。

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

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

    5.规则及规则合并

    1)  规则:任何一个条件组合的特定取值及其相应要执行的操作称为规则。在判定表中贯穿条件项和动作项的一列就是一条规则。显然判定表中列出多少组条件取值,也就有多少条规则,既条件项和动作项有多少列。

    2)  化简:就是规则合并有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系。

    6.规则及规则合并举例

    1)        如下图左端,两规则动作项一样,条件项类似,在1、2条件项分别去Y、N时,无论条件3取何值,都执行同一操作。即要执行的动作与条件3无关。于是可合并。“-”表示与取值无关

     

    2)        与上类似,下图中,无关条件项“-”可包含其他条件项取值,具有相同动作的规则可合并。

     

    3)        化简后的读书指南判定表

     

    1

    2

    3

    4

    问题

    觉得疲倦吗?

    -

    -

    Y

    N

    感兴趣吗?

    Y

    Y

    N

    N

    糊涂吗?

    Y

    N

    -

    -

    建议

    重读

    X

     

     

     

    继续

     

    X

     

     

    跳下一章

     

     

     

    X

    休息

     

     

    X

     

    7.判定表的建立步骤:(根据软件规格说明)

    1)  确定规则的个数。假如有n个条件,每个条件有两个取值(0,1),故2n种规则。

    2)  列出所有的条件桩和动作桩

    3)  填入条件项

    4)  填入动作项,等到初始判定表

    5)  简化,合并相似规则(相同动作)

    二、实战演习

    1.机器维修

    1.        问题要求:“。。。。。。对功率大于50马力的机器,维修记录不全或已运行10以上的机器,应给予优先的维修处理。。。。。。”,这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义。请建立判定表。

    解答:

    1、确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。

    2、列出所有的条件桩和动作桩:

    条件

    功率大于50马力吗?

    维修记录不全吗?

    运行超过10年吗?

    动作

    进行优先处理

    3、填入条件项。可从最后1行条件项开始,逐行向上填满。

    4、填入动作桩和动作项。这样便得到如下图的初始判定表

     

     

     

     

     

     

     

     

     

     

    条件

     

    1

    2

    3

    4

    5

    6

    7

    8

    功率大于50马力吗?

    Y

    Y

    Y

    Y

    N

    N

    N

    N

    维修记录不全吗?

    Y

    Y

    N

    N

    Y

    Y

    N

    N

    运行超过10年吗?

    Y

    N

    Y

    N

    Y

    N

    Y

    N

    工作

    进行优先处理

    X

    X

    X

     

    X

     

    X

     

    作其它处理

     

     

     

    X

     

    X

     

    X

    5、初始判定表化简。合并相似规则后得到

     

     

     

     

     

     

     

    条件

     

    1

    2

    3

    4

    5

    功率大于50马力吗?

    Y

    Y

    Y

    N

    N

    维修记录不全吗?

    Y

    N

    N

    -

    -

    运行超过10年吗?

    -

    Y

    N

    Y

    N

    工作

    进行优先处理

    X

    X

     

    X

    X

    作其它处理

     

     

    X

     

    X

    2.判定表在功能测试中的应用

    4.        判定表在功能测试中的应用

    1)        一些软件的功能需求可用判定表表达的非常清楚,在检验程序的功能时,判定表也就成为一个不错的工具。如果一个软件的规格说明指出:

                                          i.              当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1.

                                        ii.              在一个条件都不满足时,要执行操作2.

                                      iii.              在条件1不满足,而条件4被满足时,要执行操作3.根据规格说明得到如下判定表

     

    规则1

    规则2

    规则3

    规则4

    条件1

    Y

    Y

    N

    N

    条件2

    Y

    -

    N

    -

    条件3

    N

    Y

    N

    -

    条件4

    N

    Y

    N

    Y

    操作1

    X

    X

     

     

    操作2

     

     

    X

     

    操作3

     

     

     

    X

    这里,判定表只给出了16种规则中的8种。事实上,除这8条以外的一些规则是指当不能满足指定的条件,执行3种操作时,要执行1个默许的操作。在没必要时,判定表通常可略去这些规则。但如果用判定表来设计测试用例,就必须列出这些默许规则(如下表)。

     

    规则5

    规则6

    规则7

    规则8

    条件1

     

    N

    Y

    Y

    条件2

     

    Y

    Y

    N

    条件3

    Y

    N

    N

    N

    条件4

    N

    N

    Y

     

    默许操作

    X

    X

    X

    X

    2)        判定表的优点和缺点

    1、有点:它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏

    2、缺点:不能表达重复执行的动作,例如循环结构

    3)        B.Beizer指出了适合使用判定表设计测试用例的条件:

    1.规格说明以判定表形式给出或很容易转换成判定表

    2。条件的排列顺序不会也不影响执行哪些操作

    3.规则的排列顺序不会也不影响执行哪些操作

    4.每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

    5.如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。

    4)        B.Beizer提出这5个必要条件的目的是为了使操作的执行完全依赖于条件的组合。其实对于某些不满足这几条的判定表,同样可以借以设计测试用例,只不过尚需增加其它的测试用例罢了。

    转载于:https://www.cnblogs.com/sunshine2016/p/5577687.html

    展开全文
  • 测试用例设计白皮书--判定表驱动分析方法 Author: Vince 来源:http://blog.csdn.net/vincetest 一. 方法简介 1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 2.判定表的优点  能够将...

     测试用例设计白皮书--判定表驱动分析方法
    Author: Vince      来源:http://blog.csdn.net/vincetest

    一.    方法简介

    1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。

    2.判定表的优点

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

    在一些数据处理问题当中,某些操作的实施依赖于多个逻辑条件的组合,即:针对不同逻辑条件的组合值,分别执行不同的操作。判定表很适合于处理这类问题。

    3.“阅读指南”判定表

     

     

     
    1
    2
    3
    4
    5
    6
    7
    8
    问题
    觉得疲倦?
    Y
    Y
    Y
    Y
    N
    N
    N
    N
    感兴趣吗?
    Y
    Y
    N
    N
    Y
    Y
    N
    N
    糊涂吗?
    Y
    N
    Y
    N
    Y
    N
    Y
    N
    建议
    重读
     
     
     
     
     
     
     
    继续
     
     
     
     
     
     
     
    跳下一章
     
     
     
     
     
     
    休息
     
     
     
     

     

    4.  判定表通常由四个部分组成如下图所示。

     

    1)条件桩(Condition Stub):列出了问题得所有条件。通常认为列出的条件的次序无关紧要。

    2)动作桩(Action Stub):列出了问题规定可能采取的操作。这些操作的排列顺序没有约束。

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

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

    5.规则及规则合并

    1)规则:任何一个条件组合的特定取值及其相应要执行的操作称为规则。在判定表中贯穿条件项和动作项的一列就是一条规则。显然,判定表中列出多少组条件取值,也就有多少条规则,既条件项和动作项有多少列。

    2)化简:就是规则合并有两条或多条规则具有相同的动作,并且其条件项之间存在着极为相似的关系。

     

    6.规则及规则合并举例

    1)如下图左端,两规则动作项一样,条件项类似,在1、2条件项分别取Y、N时,无论条件3取何值,都执行同一操作。即要执行的动作与条件3无关。于是可合并。“-”表示与取值无关。

     

     

    2)与上类似,下图中,无关条件项“-”可包含其他条件项取值,具有相同动作的规则可合并。

     

     

     

     

    3)化简后的读书指南判定表

     

    1

    2

    3

    4

    你觉得疲倦吗?

    -

    -

    Y

    N

    你对内容感兴趣吗?

    Y

    Y

    N

    N

    书中内容使你胡涂吗?

    Y

    N

    -

    -

     

    请回到本章开头重读

    x

     

     

     

    继续读下去

     

    X

     

     

    跳到下一章去读

     

     

     

    x

    停止阅读,请休息

     

     

    x

     

    7.判定表的建立步骤:(根据软件规格说明)

    1)确定规则的个数.假如有n个条件。每个条件有两个取值(0,1),故有2n种规则。

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

    3)填入条件项。

    4)填入动作项。等到初始判定表。

    5)简化.合并相似规则(相同动作)。

     

     

    二. 实战演习

    1.问题要求:”……对功率大于50马力的机器、维修记录不全或已运行10年以上的机器,应给予优先的维修处理……” 。这里假定,“维修记录不全”和“优先维修处理”均已在别处有更严格的定义 。请建立判定表。

    解答:

    ①确定规则的个数:这里有3个条件,每个条件有两个取值,故应有2*2*2=8种规则。

    ②列出所有的条件茬和动作桩:

     

    ③填入条件项。可从最后1行条件项开始,逐行向上填满。如第三行是: Y N Y N Y N Y N,第二行是: Y Y N N Y Y N N等等。 

    ④填入动作桩和动作顶。这样便得到形如图的初始判定表。

     

    1

    2

    3

    4

    5

    6

    7

    8

    功率大于50马力吗?

    Y

    Y

    Y

    Y

    N

    N

    N

    N

    维修记录不全吗?

    Y

    Y

    N

    N

    Y

    Y

    N

    N

    运行超过10年吗?

    Y

    N

    Y

    N

    Y

    N

    Y

    N

    进行优先处理

    x

    x

    X

     

    X

     

    X

     

    作其他处理

     

     

     

    X

     

    x

     

    x

     

    初始判定表

    ⑤化简。合并相似规则后得到图。

     

    1

    2

    3

    4

    5

    功率大于50马力吗?

    Y

    Y

    Y

    N

    N

    维修记录不全吗?

    Y

    N

    N

    -

    -

    运行超过10年吗?

    -

    Y

    N

    Y

    N

    进行优先处理

    x

    x

     

    X

     

    作其他处理

     

     

    x

     

    x

     

    2.NextData函数的精简决策表

    M1={月份, 每月有30天}

    M2={月份, 每月有31天}

    M3={月份, 2月}                 有29=512条规则

    D1={日期,1~28}                 12月末31日和其它31

    D2={日期,29}                    日月份的31日处理不同

    D3={日期,30}                    平年2月28日处理不同

    D4={日期,31}                    于2月27日

    Y1 ={年:年是闰年}

    Y2 ={年:年不是闰年}

    改进为

    M1={月份: 每月有30天}

    M2={月份: 每月有31天, 12月除外}

    M4={月份:12月}

    M3={月份: 2月}

    D1={日期:1<=日期<=27}

    D2={日期:28}

    D3={日期:29}

    D4={日期:30}

    D5={日期:31}

    Y1 ={年:年是闰年}

    Y2 ={年:年不是闰年}

    输入变量间存在大量逻辑关系的NextData决策表

     

     

     

     

     

    3. 用决策表测试法测试以下程序:该程序有三个输入变量month、day、year(month、day和year均为整数值,并且满足:1≤month≤12和1≤day≤31),分别作为输入日期的月份、日、年份,通过程序可以输出该输入日期在日历上隔一天的日期。

        例如,输入为2004年11月29日,则该程序的输出为2000年12月1日。

    1)分析各种输入情况,列出为输入变量month、day、year划分的有效等价类。

    2)分析程序规格说明,结合以上等价类划分的情况给出问题规定的可能采取的操作(即列出所有的动作桩)。

    3)根据(1)和(2),画出简化后的决策表。

    案例分析如下:

    1) month变量的有效等价类:

        M1: {month=4,6,9,11}             M2: {month=1,3,5,7,8,10}

        M3: {month=12}                  M4: {month=2}

    2)day变量的有效等价类:

        D1:{1≤day≤26}         D2: {day=27}         D3: {day=28}                    D4: {day=29}                    D5: {day=30}                D6: {day=31}

    3)year变量的有效等价类:

        Y1: {year是闰年}                Y2:  {year不是闰年}

    4)考虑各种有效的输入情况,程序中可能采取的操作有以下六种:

        a1: day+2                       a2: day=2                    a3: day=1 

        a4: month+1                     a5: month=1                  a6: year+1 

     

    4. 判定表在功能测试中的应用

    1)一些软件的功能需求可用判定表表达得非常清楚,在检验程序的功能时判定表也就成为一个不错的工具。如果一个软件的规格说明指出:

    I. 当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、3和条件4满足时,要执行操作1。

    II. 在任一个条件都不满足时,要执行操作2。

    III. 在条件1不满足,而条件4被满足时,要执行操作3。 根据规格说明得到如下判定表:

     

    这里,判定表只给出了16种规则中的8种。事实上,除这8条以外的一些规则是指当不能满足指定的条件,执行3种操作时,要执行1个默许的操作。在没必要时,判定表通常可略去这些规则。但如果用判定表来设计测试用例,就必须列出这些默许规则(如下表)。

     

     
    规则5
    规则6
    规则7
    规则8
    条件1
    -
    N
    Y
    Y
    条件2
    -
    Y
    Y
    N
    条件3
    Y
    N
    N
    N
    条件4
    N
    N
    Y
    -
    默许操作
    x
    x
    x
    x
    默许的规则

     

     

    2)判定表的优点和缺点

    I.  优点:它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏。

    II. 缺点:不能表达重复执行的动作,例如循环结构。

    3)B. Beizer 指出了适合使用判定表设计测试用例的条件:

    ①规格说明以判定表形式给出,或很容易转换成判定表。

    ②条件的排列顺序不会也不影响执行哪些操作。

    ③规则的排列顺序不会也不影响执行哪些操作。

    ④每当某一规则的条件已经满足,并确定要执行的操作后,不必检验别的规则。

    ⑤如果某一规则得到满足要执行多个操作,这些操作的执行顺序无关紧要。

    B. Beizer提出这5个必要条件的目的是为了使操作的执行完全依赖于条件的组合。其实对于某些不满足这几条的判定表,同样可以借以设计测试用例,只不过尚需增加其它的测试用例罢了。

    展开全文
  • 1.判定表驱动分析法 在之前介绍的因果图分析法也用到了判定表,但是没有详细介绍。判定表又称决策表,它是分析和表达多逻辑条件下执行不同操作的情况的工具。在黑盒测试中,基于判定表的测试是最具有逻辑性、最严格...

    1.判定表驱动分析法

    在之前介绍的因果图分析法也用到了判定表,但是没有详细介绍。判定表又称决策表,它是分析和表达多逻辑条件下执行不同操作的情况的工具。在黑盒测试中,基于判定表的测试是最具有逻辑性、最严格的测试。判定表可以将复杂的问题按照各种可能的情况列举出来,简单明了且避免疏漏。

    测试思想:根据逻辑条件取值的组合所构成的多种情况,分别执行不同的操作,构造相应的测试用例。

    决策表分类:

    (1)有限项决策表:所有条件项的取值都是二值逻辑(True/False,,0/1...)      

    (2)扩展项决策表:所有条件项的取值有多个

    决策表组成部分:

    通常由以下4部分组成:

    (1)条件桩—列出问题的所有条件

    (2)条件项—针对条件桩给出的条件列出所有可能的取值

    (3)动作桩—列出问题规定的可能采取的操作

    (4)动作项—指出在条件项的各组取值情况下应采取的动作

    具体案例分析见博客判定表驱动分析法设计测试用例

    2.场景分析法

    简单概念:

    场景:用例场景用来描述流经用例的路径,从用例开始到结束遍历这条路径上的所有基本流和备选流。

    基本流:经过用例最简单的路径

    备选流:可能从基本流开始,在某个特定的条件下执行,再次加入到基本流里;或者源于一个备选流,从而终止用例而不再加入到某个流。

    基本流和备选流的区分:

    (1)基本流只有一个起点,一个终点;

    (2)基本流是主流,备选流是支流;

    (3)备选流可以始于基本流,也可以始于其它备选流

    (4)备选流的终点,可以是一个流程的出口,也可以是回到基本流,还可以是汇入其它的备选流

    (5)备选流汇合时,谁汇合到谁,取决于流量大小也即该流程出现的可能性大小,小的汇入大的

    (6)如果在流程图中出现了两个不相上下的基本流,一般需要把它们分别当做一个业务看待。

    详细案例可见博客场景分析法设计测试用例

    3.流程分析法:

    定义:流程分析法是把软件系统的某个流程看成路径,用路径分析的方法去设计测试用例。根据流程的顺序进行依次组合,使得流程的每个分支都可以走到。简单来讲,就是我们常见的流程图的方式来分析整个流程,再根据不同的路径执行不同的操作从而设计出测试用例。

    详细可见博客流程分析法设计测试用例

    4.状态迁移分析法:

    步骤:

    (1)根据需求明确状态节点

    (2)绘制状态迁移图

    (3)绘制状态迁移树

    (4)抽取测试用例

    详细的案例可见博客状态迁移分析法设计测试用例

    5.错误推测法:

    错误推测法是指测试人员依据自己的经验和直觉推测出程序可能出现问题的地方,从而有针对性的进行测试。它基于“某处发现了缺陷,则可能会隐藏更多的缺陷”这样的思想。在实际操作中,列出程序中所有可能的错误和容易发生的特殊情况,然后依据测试者经验作出选择。

    错误推测法适用于我们进行经验测试,或者根据现有BUG进行拓展测试、用例补充。

    展开全文
  • 测试用例设计白皮书--判定表驱动分析方法 一. 方法简介 1.定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 2.判定表的优点  能够将复杂的问题按照各种可能的情况全部列举出来,简明并...
  • 测试用例设计之判定表驱动分析方法 by:授客 QQ:1033553122 1.定义 分析和表达多个逻辑条件下执行不同操作的情形的工具。 2.判定表的优点 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免...
  • 1.定义:判定表分析和表达多逻辑条件下执行不同操作的情况的工具。2.判定表的优点能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。在一些数据...
  • 定义:判定表分析和表达多逻辑条件下执行不同操作的情况的工具。2.判定表的优点 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。 在一些数据...
  • 判定表驱动法 定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 优点:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。在一些...
  • 需求 日期问题 测试以下程序:该程序有三个输入变量 month、day、year (month、day 和 year 均为整数值,并且满足:1 ≤ months ≤ 12、1 ≤ days ≤ 31 和 1900 ≤ ...(2) 判定表驱动法设计测试用例。 实现 一、边界值
  • 判定表分析和表达多逻辑条件下执行不同操作的工具。它能够将复杂的问题按照各种可能的情况全部列举出来。因此,利用判定表能够设计出完整的测试用例集合。在一些数据处理问题当中,某些操作的实施依赖于多个逻辑...
  • (五)判定表驱动法定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。优点:能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。在...
  • 5.判定表驱动方法 前面因果图方法中已经用到了判定表。判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。在程序设计中可作为编写程序的辅助工具。把复杂的逻辑关系和多种条件组合的情况表达得较明确。 ...
  • 案例实战—直角三角形试用等价类划分、边界值分析和因果图加判定表驱动法为三角形问题中的直角三角形设计测试用例。假定三边边长a、b和c均为1到100之间的正整数,其中整数的要求通过数据类型控制。直角三角形问题...
  • 黑盒测试用例设计--判定表驱动

    千次阅读 2017-08-01 13:18:43
    判定表驱动法 基本思路:对多个条件的组合进行分析,从而设计测试用例来覆盖各种组合。   判定表:是分析和表达多逻辑条件下执行不同操作的情况下的工具。   判定表5个概念:  条件桩:问题的输入条件列出...
  • 判定表驱动法的应用 判定表的优点: a. 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用判定表能够设计出完整的测试用例集合。 b. 在一些数据处理问题当中,某些操作的实施依赖于多个...
  • (七)判定表驱动

    千次阅读 2015-04-14 14:41:14
    判定表也称决策表,是分析和表达逻辑条件下执行不同操作的情况下的工具。它能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏,设计出完成的测试用例集合。 2)组成: 1) 条件桩(Condition ...
  • 决策表法(判定表驱动法):是分析和表达多逻辑条件下执行不同操作的情况的工具,能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。 错误推测法 :依靠经验和直觉猜测程序中可能存在的各种错误,从而...
  • 【黑盒测试用例设计】测试方法之判定表驱动法 原理:针对不同逻辑条件的组合值,分别执行不同的操作。 定义:判定表是分析和表达多逻辑条件下执行不同操作的情况的工具。 判定表的优点 能够将复杂的问题按照各种...
  • 边界值分析法: 选择测试用例的原则: 1.如果规定了值的范围,则应选取刚好等于,略大于,略小于端点的值 2.如果规定了值得个数,则用最大个数,最小个数和比最大个数、最小个数多一个和少一个的数作为测试数据...

空空如也

1 2 3 4 5 ... 13
收藏数 244
精华内容 97
关键字:

判定表驱动分析