使用场景:
1:等价类和边界值无法覆盖到控件与控件之间的联系,此时我们需要判定表来覆盖控件与控件之间的影响
什么是判定表:
判定表是分析若干输入条件下,被测试对象根据不同的条件作出不同的响应的工具,适用于业务逻辑关系和多种条件组合情况
判定表的结构:
名词解释:
- 条件桩:被测对象所有的输入
- 动作桩:针对条件桩所有的动作
- 条件项:被测对象可能输入的真假值 T F
- 动作项:针对条件项的动作T F
使用判定表的步骤
1.列出所有的条件和动作
2.根据提取出来的条件桩和动作桩,设计判定表确定规则的个数(假如有n个条件,每个条件有2个取值 (0、1),就可以产生2的n次方种规则)
3.填写判定表
4.简化判定表【合并判定表会减小测试的充分性,8条以内的规则不建议合并】
5.一个规则就可以转成一个测试用例
以登录模块为例
正确的账号密码登录成功
用户名和密码为空:提示用户名或密码不能为空
用户名输入错误:提示用户名或密码错误,用户名和密码清空
用户名正确,密码错误,提示:密码错误,用户名保留,密码清空
生成判定表如下图
判定表优点
判定表法主要针对功能需求中的处理过程,处理过程越是复杂,就越有必要使用判定表法。判定表法充分考虑了输入条件间的组合,对组合情况覆盖充分,且可得出每个组合的预期输出。其实,做测试需求分析的目的也就是得出完整的测试用例。重测试需求分析,轻测试执行过程。
判定表缺点
当被测试特性输入较多时,会造成判定表的规模很庞大。当输入条件间的约束条件不能有效区分输入是否需要进行组合测试时,有可能产生冗余。需手工剔除冗余用例。