1、为什么用判定表设计测试用例?
等价类方法详细的考虑了需求输入域,但对于输入域与输入域存在关联时无法覆盖,(比如等价类划分设计测试用例时,设计一条新的测试用例,使其仅覆盖一个无效等价类,直至所有的无效等价类完全被覆盖,没有考虑无效等价类与无效等价类的组合情况)。所以需要一种能考虑输入域间的互相关系设计方法来考虑业务描述性的测试需求。
2、什么是判定表?
判断表是分析喝表达若干输入条件下,被测对象根据输入作出不同响应的工具,适用于业务逻辑关系和多种条件组合情况。
判定表的结构
条件桩:被测对象的所有输入
条件项:针对条件桩可能输入的真假值
动作桩:针对条件桩被测对象可能采取的所有动作
动作项:针对动作桩,被测对象响应可能结果取值
3、怎么用判定表设计测试用例?
步骤:
一、列出所有的条件和动作
二、根据提取出来的条件桩和动作桩,设计判定表确定规则的个数(假如有n个条件,每个条件有2个取值(0、1),就可以产生2的n次方种规则)
三、填写判定表
四、简化判定表(合并判定表是牺牲测试充分性,混乱业务逻辑为代价。8条以内的规则不建议合并)
五、抽取测试用例(简化判定表后,可抽取判定表中的每一条规则作为测试用例,判定表得到的是测试规则,不是最终的测试用例。规则不能验证功能点正确性,仅验证业务规则的正确性)
4、判定表设计测试用例的优缺点?
优点:判定表充分考虑了输入域之间的组合情况,每条规则覆盖了多条输入条件,考虑输入的约束关系,降低了漏测的风险。同时利用判定表可推断出需求规格本身的逻辑性,反向证明了需求的正确。
缺点:当输入项过多时,规则数以2的n次方剧增,判定表会非常庞大,采用判定表合并时会造成逻辑缺失,业务混乱错误的情况。
5、判断表设计测试用例的例子
示列一:停机或欠费不允许主被叫
步骤一:列出所有的条件和动作
条件:停机/欠费
动作:主被叫
步骤二:确定规则数
有3个条件,每个条件有2个取值,故有8个规则
步骤三:填写判定表
步骤四:只有4条规则不合并,8条以下的规则不建议合并
步骤五:规则抽取:
(1)用户不停机不欠费,可进行主被叫
(2)用户不停机欠费,不允许主被叫
(3)用户停机不欠费,不允许主被叫
(4)用户停机欠费,不允许住被叫