前言

举个栗子

侦察兵进行侦察即为黑盒测试,卧底探清敌人内部为白盒测试。

        作为侦察兵,他们只需要记录敌人的进出数量以及携带的火力,不需要管他们敌人的老巢。

        作为卧底,他们需要了解敌军内部的结构,例如弹药库在哪,头领办公室在哪,敌军牢房路线等,他们不需要管有多少日本兵进出,只需调查出日本大营的一些内部信息即可。

由此:就可以看出黑盒测试与白盒测试的区别在于:是否需要了解“内部结构” 




一、黑盒测试是什么?

        黑盒测试也称:数据驱动测试(由数据驱动其进行测试)包括功能测试和性能测试。

黑盒测试:没有办法或不用了解事物的内部结构和运行机制,而把整个事物看成一个整体——黑盒子,通过分析事物的输入与输出(侦察兵观察敌军发兵数量)以及周边条件来分析和处理问题




二、白盒测试是什么?

白盒测试也称:结构化测试逻辑驱动测试

白盒测试:能够看清事物的内部,即了解事物的内部结构和运行机制,通过剖析事物的内部结构和运行机制,来处理和解决问题。

结合栗子:潜入敌后的卧底,通过调查内部结构,例如画出到监狱的路线图,使其能够帮助部队营救被困战友。


常见白盒测试:


三、判断某种方式是黑盒测试还是白盒测试

过去:人们常常把等价类划分法,边界值分析法,错误推测法归为黑盒测试。但是这不够恰当,例如:边界值分析方法,可以在系统外部输入中运用,也可以在代码内部边量测试中运用,前者为黑盒测试,后者为白盒测试。

举个栗子:

刚开始,侦察兵只能观察敌军进出大营的情况,此时为黑盒测试。

但是,当敌军全部出动时,此时其卡车相当于”敌人的老巢,此时的侦察营看到的就是内部信息了。




 

总结

判定某种方法是否为黑盒测试方法,关键还是看是否针对被测对象内部结构还是针对被测对象的整体进行测试。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐