在软件测试工程师的工作中,现在互联网公司都在想要实现自动化测试,配合云端测试,而不是用多人作战来保证软件质量,可无论是自动化测试还是云端,这都需要在已选择好测试范围、测试点的基础之上,详细来说测试用例的编写就会对软件测试起到至关重要的作用。
一、等价类法
针对有输入框的功能可以选择等价类法,针对输入框内的输入规则、长度、取值范围取值类型,根据其输入的限制,分类出有效类和无效类,从而构造出有效数据和异常数据,每个有效数据的选择最好可以满足几个规则限定,而异常数据则需要一个点上不符合规则就构造一条测试数据,然后根据正常操作、异常操作、环境异常来配合构造测试用例。总结:等价类法使用起来比较简单并且有效,但数据为随机选取,不考虑输入参数之间的关系
二、边界值
人在自己的极限的时候会发生错误,软件也是一样,在边界值内更容易出现缺陷,同样的输入框内取值范围的边界内和边界外都需要进行验证是否符合规则。比如,设置新密码,长度要求在6位以上和10位以下,那么我们就需要构造测试数据:
1、有效数据:6位密码;10位密码;8位密码(范围内的点)
2、无效数据:5位密码;11位密码
三、判定表法
判定表法依旧是针对一个功能内的输入框之间的关系来构造测试用例,他们相互关系的前提是输入框内的数据符合输入规则;分析各个输入框之间的联系,将他们的输入作为条件桩,所产生的结果做为动作桩,然后列出各个输入框的条件之间全组合,来和作为结果的动作桩意义对应,还会有条件相互矛盾的,那么对应的结果就是不存在,难点在与分析出各个输入框之间的关系来对应结果,还会有漏测的风险.
四、正交法
刚才分析了输入框以及输入框存在逻辑关系应该如何构造测试用例,针对独立功能存在多个复选框,又该如何构造测试用例呢?例筛选有价格、产地、大小、品牌的复选框,都有三个到五个的取值范围,我们可以给他们分别取值,构造测试用例,若要他们相互组合,那么测试用例就会很多,给测试带来时间成本和资源占用,这个取舍就没有了标准,这时我们就可以采用正交法,保证这些复选框的选项可以满足两两组合。我们把每个复选框内相对应的选项列出一个正交表,若选项个数不同,可构造一个数据填空,或者将两个数据合为一个数据,使其满足m * n 的正交表,带入正交表后,在对其进行填空赋值,对合二为一的数据进行拆分,若存在两个组合需要一个拆分完成,在对另一个进行拆分。
参考:一张涂鸦搞定测试用例设计