在跟大家讲解测试用例之前,首先想要问大家对一个“好的”的测试用例中的“好”是怎么定义的?可能对一些才接触的同学来说,那个“好”可能只是需要它运行起来就可以了,其实不然,接下来跟大家讲解一下“好的”测试用例是什么?如何去做一个“好的”测试用例?
一、什么是“好的”测试用例
“好的”测试用例一定是一个完备的集合,它能够覆盖所有等价类以及各种边界值,而跟能否发现缺陷无关。
举个例子:
如果把被测试软件看作一个池塘,软件缺陷是池塘中的鱼,建立测试用例集的过程就像是在编织一张捕渔网。“好的”测试用例集就是一张能够覆盖整个池塘的大渔网,只要池塘里有鱼,这个大渔网就一定能把鱼给捞上来。
如果渔网本身是完整的且合格的,那么捞不到鱼,就证明池塘中没有鱼,而渔网的好坏与池塘中是否有鱼无关。
二、好在哪里
1、整体完备性,即能够尽可能的覆盖测试需求。
2、等价类划分的完备性,是指对于每个等价类都能保证只要其中一个输入测试通过,其他输入也一定测试通过。
3、等价类集合的完备性,需要保证所有可能的边界值和边界条件都已经正确识别。
三、3种最常用的测试用例设计方法
1、等价类划分
即等价类中任意一个输入数据对于揭露程序中潜在错误都具有同等效果。后续我们只要从每个等价类中任意选取一个值进行测试,就可以用少量具有代表性的测试输入取得较好的测试覆盖结果。
以“用户登录”用户名