判定表法跟等价类划分法
什么是判定表法
判定表是分析和表达多种输入条件下系统执行不同动作的工具。在程序设计发展的初期,判定表就已被当作编写程序的辅助工具了,它可以把复杂的逻辑关系和多种条件组合的情况表达得既具体又明确。判定表通常由四个部分组成。
- 条件桩:列出了系统的所有输入,列出的输入次序无关紧要
- 动作桩:列出了系统可能采取的操作,这些操作的排列顺序没有约束
- 条件项:列出针对它左列输入的取值,在所有可能情况下的真假值
- 动作项:列出在输入项的各种取值情况下应该采取的动作
- 动作项和条件项一起,指出了在条件项的各种取值情况下应该采取的动作,在判定表中贯穿条件项和动作项的一列就是一条规则,可以针对每个合法输入组合的规则设计用例进行测试。
对于判定表可以进行化简工作,化简工作是以合并相似规则为目标的。如果表中有两条或多条规则具有相同的动作,并且其条件项之间存在极为相似的关系,我们便可以将其合并。
等价类划分法
等价类划分把程序的输入域划分为若干个部分,然后从每个部分中选取比较有代表性的数据当做测试用例,即用一部分输入数据代表整个输入数据集合。
使用等价类划分设计测试案例的时候,首先要根据需求说明书列出等价类。等价类有两种:有效等价类和无效等价类。
有效等价类:是指对于依据需求说明书划分出来的合理的、有意义的数据的集合。利用有效等价类可以确定程序是否实现了需求说明书中要求的功能。
无效等价类:无效等价类与有效等价类正好相反。
利用等价类划分法设计测试案例的时候,需要同时考虑到有效等价类和无效等价类这两种数据集合。
确定等价类的原则:
- 在输入条件规定了输入范围或者个数的情况下,可以确立一个有效等价类和两个无效等价类。
- 如果输入条件规定了某个输入域的集合,或者在必须怎么样的情况下,可以确定一个有效等价类和一个无效等价类。
- 如果输入条件规定了某个输入必须为真或者为假的时候,可以确定一个有效等价类和一个无效等价类。
- 如果需求规定了必须遵循某种规则时,可以确定一个有效等价类和若干个无效等价类。