测试用例的设计方法
等价类
因材施教的例子:
原则上讲,老师都应该根据每个学生的学习情况制定相应符合的学习方案,但是实际上学生太多,老师管不过来,只能讲学生分为三六九等,优等生强调知识面的扩展和综合能力的提升,中等生强调夯实基础,查缺补漏,差等生强调优先掌握重点,暂时逃过难点.......
思路:输入的集合是无穷的,不能全部都覆盖到
等价类:依据需求将输入划分为若干个等价类,从等价类中选出一个测试用例,如果这个测试用例测试通过,则认为所代表的整个等价类测试通过,这样就可以通过较少的测试用例达到尽量多的功能覆盖,解决了不能穷举测试的问题
弊端:等价类只考虑输入域的分类,没有考虑输入域的组合,需要其他的设计方法和补充
- 有效等价类:对于程序的规格说明书是合理的,有意义的输入数据构成的集合,利用有效等价类验证程序是否实现了规格说明书中所规定的功能和性能
- 无效等价类:根据需求说明书,不满足需求的集合
超市买水果
有效等价类:苹果,香蕉,桃子...
无效等价类:青菜,大米,饮料...
边界值
日常语言的漏洞:
考完试发成绩了,老师布置寒假作业:超过60分的,所有题目抄写一遍,低于60分的,所有题目抄写三遍
于是小明就没有作业~~~,因为他刚好60分
边界值:边界值分析法就是对输入或者输出的边界值进行测试的一种黑盒测试方法,通常边界值分析法是作为对等价类划分方法的补充,这种情况下,其测试用例来自等价类的边界
1. 输入框长度为1-11,边界值取值:0,1,11,12
2. 运动员参赛项目为1-3项,边界值取值:0项,1项,3项,4项
3. 查询面页面有999行,每50行为一页,边界值取值:0行,1行,50行,51行,999行
因果图
因果图:因果图是一种简化了的逻辑图,能直观的表明程序输入条件(原因)和输出动作(结果)之间的相互关系,因果图法是借助图形来设计测试用例的一种系统方法,特别适用于被测试程序具有多种输入条件,程序的输出又依赖于输入条件的各种情况
因果图需要掌握的基本知识:
- 恒等