定义:
黑盒测试:黑盒测试(Black-box Testing),黑盒测试又称为“功能测试”,是将测试对象看做一个黑盒,在并不考虑软件产品的内部结构和处理过程的基础上对软件产品进行功能测试。
白盒测试:白盒测试(White-box Testing)也称为结构测试,主要用于检测软件编码过程中的错误。程序员的编程经验、对编程软件的掌握程度、工作状态等因素都会影响到编程质量,导致代码错误。
黑盒测试的一些常用方法:
(1)等价类划分法:
**定义:**
根据程序规格说明书把所有可能的输入数据,即程序输入域划分为若干个互不相交的子集,称为等价类,然后从每个等价类中选取少数具有代表性的数据作为测试用例,进行测试。
**等价类:**
等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的。等价类分为有效等价类和无效等价类。
** 有效等价类: **
对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可以检验程序是否实现了规格说明中所规定的功能和性能。
**无效等价类:**
与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受异常数据的考验。经过正反的测试才能确保软件具有更高的可靠性。
确定等价类的6个原则:
①输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。
③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
④多输入的或关系
在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
⑤多输入的且关系
在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
⑥细分等价类
在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步地划分为更小的等价类。
(2)边界值分析法
边界值分析法也是一种典型的黑盒测试方法,其主要的测试点 是对“输入”或“输出”的“边界”值进行测试,通常作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界.
(3)因果图分析法
考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例。
**(4)错误推断法
**在软件测试过程中,人们可以依靠经验和直觉推测系统中可能存在的各种错误,从而有针对性地编写检查这些错误的例子,这就是错误推测法。
黑盒测试和白盒测试的区别:
1)定义:
白盒测试需要从代码句法发现内部代码在算法,溢出,路径,条件等等中的缺点或者错误,进而加以修正。而黑盒测试着重测试软件功能,它并不涉及程序的内部结构和内容特性。黑盒测试并不能取代白盒测试,它与白盒是互补的测试方法,它很可能发现白盒测试不易发现的其他类型错误。
2)测试目的:
黑盒测试的目的是检测是否有不正确或遗漏的功能;数据或者参数上,输入能否正确接收;是否有数据结构错误或外部信息访问错误;性能上是否能够满足要求;是否有初始化或终止性错误。而白盒测试的目的是通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致,而不顾它的功能。
3)检测方式:
白盒测试是穷举路径测试,黑盒测试是穷举输入测试,这两种方法是基于完全不同的观点,反应了事物的两个极端,它们各有侧重和优势,但不能彼此替代。在现代的测试理念中,这两种测试方法不是截然分开的,而是交叉使用。
版权归原作者 Severus_Zhang 所有, 如有侵权,请联系我们删除。