黑盒测试
黑盒测试又称正确性测试,或功能测试,是对产品的各功能进行验证,用于检查产品是否达到用户要求的功能或者说检查软件的功能是否符合规格说明。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。白盒测试在测试的早期采用,而黑盒测试主要用于测试的后期。黑盒测试故意不考虑控制结构,而是注意信息域。
黑盒测试主要测试的方面:
- 不正确或遗漏的功能;
- 接口、界面错误;
- 性能错误;
- 数据结构或外部数据访问错误;
- 初始化或终止条件错误等等。
等价类划分
等价类划分是一种典型的黑盒测试方法,该方法完全不考虑程序的内部结构,只根据对软件的要求和说明,即需求规格说明书,把程序输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据为作测试输入。
有效等价类和无效等价类
等价类划分分为两种情况,有效等价类和无效等价类
分类 | 介绍 |
---|---|
有效等价类 | 是指对程序规格说明,是有意义的,合理的输人数据所构成的集合。利用有效等价类,可以检验程序是否实现了规格说明预先规定的功能和性能。 |
无效等价类 | 是指对程序规格说明,是不合理或无意义的输入数据所构成的集合。利用无效等价类,可以检查程序功能和性能的实现是 否有不符合规格说明要求的地方 |
示例:假设存在一个三角形判断程序:输入三个正整数,根据输入的数判断组成的三角形类型。
当输入为:a = 10,b = 10,c = 10时,为有效等价类
当输入为:a = -1,b = 5,c = 9时,由于a=-1不满足,三个都为正整数的条件,因此为无效等价类。
等价类划分
划分等价类需要满足划分的集合为互不相交的一组子集,且这些子集的并是整个集合。
以上面的三角形判断程序为例:
边界值分析
大量的故障发生在输入或输出范围的边界上,而不是在输入范围的内部。使用边界值分析方法设计测试用例时首先应确定边界情况。
边界值分析测试数据的选取(也要考虑无效值):
- 选取正好等于边界的值
- 刚刚大于边界的值
- 刚刚小于边界的值
边界值分析的不足:
边界值分析要求输入的变量是独立的,否则这类方法不能产生令人满意的测试用例。例如,月份和日期就不是独立的,日期的最大值随月份的变化而变化。
边界值分析与等价划分的区别:
- 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
- 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。
决策表测试
决策表(也叫判定表)是所有的黑盒测试方法中最严格,最具有逻辑严格性的测试方法。 决策表最突出的优点是,它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏。
决策表的原理:
在一些数据处理问题当中,某些操作的实施依赖于多个输入条件的组合。判定表能够将复杂问题按照各种可能的情况全部列举出来,避免遗漏。
如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......
END配套学习资源分享
最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】
加入我的软件测试交流qq群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
全套资料获取方式: