说起黑盒测试,想必大家对于黑盒测试的主要方法也是耳熟能详,有等价类划分法、边界值分析法、因果图法、判定表驱动法、场景法、错误推测法。今天我们主要聊一聊等价类划分法。

等价类的相关概念不用我多说,就是指某个输入域的子集合,在该子集合中,各个输入数据对于揭露程序中的错误都是等效的。测试某等价类的代表值就等价于对这一类其它值的软件测试

如果等价类中的一个输入数据能检测出一个错误,那么等价类中的其他输入数据也能检测出同一个错误;反之,如果等价类中的一个输入数据不能检测出某个错误,那么等价类中的其它输入数据也不能检测出某个错误。等价类又分为有效和无效等价类。有效等价类指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明中所规定的功能和性能。无效等价类和有效等价类是反着来的,指对于软件规格说明而言,没有意义的、不合理的输入数据集合。利用无效等价类,可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。

确定等价类的原则

在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类(在范围之内的等价类)和两个无效等价类(有效范围的两侧)。

在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,则可以确立一个有效等价类和一个无效等价类。 (集合中的有效等价类和集合外 的无效等价类)。

在输入条件是一个布尔量的情况下,可以确立一个有效等价类和一个无效等价 类。在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可以确立n个有效等价类和一个无效等价类(除了规定的这组值)。

在规定了输入数据必须遵守的规则的情况下,可以确立一个有效等价类(符合 规则)和若干个无效等价类(从不同角度违反规则)。

在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类(考虑一下if嵌套)。

此次分享到这里就结束了,大家有什么疑问欢迎咨询,后续我们将会分享更多有关的知识。