曾言道“黑猫,白猫,只要能抓住老鼠就是好猫”。我们的测试亦是如此,不管是黑盒测试还是白盒测试,只要能测试出来bug,可以找出问题所在,保障软件质量就是好的测试方法。
对于刚入门的软件测试小白来说,黑盒测试与白盒测试绝对是必学的词汇之一。那么,他们说的黑到底是什么黑,说的白到底是什么白?两者之间的区别到底在哪呢?别着急,接下来筑粒小编将为你答疑解惑。
最大区别:关注的对象不一样
黑盒测试与白盒测试两者最大的不同就是测试时的关注对象不一样。
黑盒测试主要针对的是把程序展现给用户的功能,而白盒测试则是主要针对程序的代码逻辑。前者测试最终功能,而后者测试后台程序。
黑盒测试
黑盒,其实从字面意思上来理解就是将测试对象看作是一个不公开透明的黑色盒子。黑盒测试简单来说就是在测试的时候,不考虑盒子里面的逻辑结果跟程序运行,只是根据程序的需求规格书来检查程序的功能是否符合它的功能说明,检验输出结果正不正确。
白盒测试
与黑盒恰恰相反,这种方法是把测试对象看作一个打开的透明盒子。测试时,测试人员会利用程序内部的逻辑结构及有关信息,通过在不同点检查程序状态,检验程序中的每条通路是否都能按预定要求进行正确工作。
举个例子
如果还是不懂没有关系,小编来举个例子给大家理解一下。假如小A和小B是一对兄弟。小A打算参加晚宴,但是小A需要在家办公,于是小A让小B去帮他买一套衣服,在两个小时内可以买回来。
如果在黑盒模式下,小A(测试人员)会为小B列出一张购买清单(所谓:需求规格说明书),然后告诉小B,现在是9:45,只要在11:45之前买齐所有东西,带着回家就可以了。
如果是在白盒测试下,就可能会出现以下的情况。小B达到指定的商场后,小A开始电话远程指挥:首先买西服,卖西服的那家店,你要去指定的那一家。你现在进的是南门吗?走南门的话,进去,靠右走,一直走到最里面……什么?你走的北门?如果是走北门的话,一进去,先左拐,走到头,到卖饮品那里,往右拐,一直往前走……跟老板说要买经典黑色西服,不要其它颜色,要中等价位的那款。好了,现在去买领带。领带一定要看好花色,不要太花的,要买跟这套西服相配的。而且要根据我的气质来搭配,选择菱形花色的,如果没有的话就要纯黑色好了……
所以
总有人喜欢比较:黑盒测试和白盒测试到底哪个更好呢?其实,从上面的例子也不难看出,两者的优势各不相同。但无论采用哪种测试方法,毫无疑问都是为了找出缺陷,发现风险,从而确保软件的缺陷更少,质量更好。黑盒和白盒,始终交织出现在我们的测试工作中。