在软件测试的面试中,什么是黑盒测试,什么是白盒测试是特别容易被问到的一个问题。
面试官问出这个问题,其实考察的是大家对于软件测试基础理论的掌握程度。下面来梳理一下这个问题的回答思路。
黑盒测试
黑盒测试会把被测的软件看作是一个黑盒子,测试时不去关心盒子里面的代码结构和逻辑是什么样子的,只需要关心盒子的输入数据和输出结果。
在黑盒测试当中,测试工程师会模拟用户的行为去使用产品,检查软件产品是否达到了用户的需求。
黑盒测试方法能够真实地从用户角度来考察被测系统的功能性需求实现情况。在软件测试的各个阶段,如单元测试、集成测试、系统测试及验收测试等阶段中,黑盒测试都发挥着重要作用。尤其在系统测试和验收测试中,它的作用是其他测试方法无法取代的。
比较常用的黑盒测试方法有等价类划分法、边界值分析法、因果图法、判定表法、场景法、正交法等等。
白盒测试
白盒测试也把被测的软件看作是一个盒子,但是需要考虑盒子的内部结构和逻辑。所以根据待测产品的内部实现细节来去设计测试用例的方法称为白盒测试。
白盒测试是可以看到内部代码如何运作的,可通过测试来检测产品内部是否符合规定正常运行。
它执行手段其实是不限的。既可以使用静态测试的方式,比如代码审查,代码扫描工具等等。也可以使用动态测试的方式,比如语句覆盖、判断覆盖、条件覆盖、路径覆盖等等。
总结
1、总结来说,黑盒测试和白盒测试都是测试设计的方法。
2、黑盒测试一般用来确认软件功能的正确性和可操作性,目的是检测软件的各个功能是否能得以实现。它把被测试的程序当作一个黑盒子,不考虑其内部结构,在知道该程序的输入和输出之间的关系或程序功能的情况下,依靠软件规格说明书来确定测试用例和推断测试结果的正确性。
3、白盒测试需要根据软件内部的逻辑结构分析来进行测试,是基于代码的测试。把被测程序当作盒子的话,它需要考虑盒子的内部结构和逻辑。测试人员通过阅读程序代码或者通过编写测试代码的方式来判断软件的质量。
4、两种测试方法分别适用与不同的测试场景。黑盒测试更多使用在系统测试和验收测试中。而白盒测试则是针对代码本身的测试,所以更多用在单元测试或者集成测试中。
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。