首页 新闻 会员 周边 捐助

求大神帮忙解释:黑盒测试、白盒测试、单元测试的说明

1
悬赏园豆:80 [已解决问题] 解决于 2018-09-05 16:52

经量详细举个列子,说明一下它们三者之间的区别,感谢!

$无痕的主页 $无痕 | 初学一级 | 园豆:78
提问于:2018-09-05 08:58
< >
分享
最佳答案
2

假设待测程序是一个 盒子。那么盒子里面的零部件 就是具体的代码。
然后一个密封的盒子丢了我面前,老板说,让我测试一下这个盒子有没有BUG。
然后我对着这个盒子尝试各种各样的输入,比如说把它丢在阳光里晒足一整天,或者是盒子上的各种按钮,按照莫名其妙的各种顺序尝试一下,看一下这个盒子有什么反应。然后记下来,对照一下产品说明书,看看是不是符合预期。
那么这整个阶段就是黑盒测试,我不需要知道里面零部件怎么结合,不需要知道代码逻辑。是个门外汉都能做。

然后我提交了测试报告给老板,突然嘴欠说了一句,“其实我懂C#的”
老板就说,“能力越大,责任越大” ,那你打开盒子来测试吧。
我照着之前的测试步骤,把盒子打开来各部件在各种测试中的反馈,检查部件之间的结合是不是正常的,检查从外部输入到触发一个结果的流程中是不是有一些不妥当的地方。
这就是白盒测试。

然后我又提交了测试报告,突然又嘴欠说了一句“大体的逻辑是测试过了,不过部件太多太复杂,细节之处覆盖不到”
老板又说,那你把这些部件拆出来单独一个一个测试。
我就把一些模块单独拿来测试,当然直接拆出来它是不可能正常运作的,还需要给这个部件加载一些模拟数据,这样它就能假装正在一个系统里正常的运行,然后我又是各种输入输出去测试它。
这就是单元测试。

收获园豆:80
鬼柒 | 菜鸟二级 |园豆:482 | 2018-09-05 16:04
其他回答(2)
0

https://baike.baidu.com/item/黑盒测试白盒测试/10617194
https://baike.baidu.com/item/单元测试/1917084?fr=aladdin
黑盒就是界面上点点点,白盒就是结合源代码调试,看执行过程和结果,单元测试就是针对项目的某个功能块单独测试(一般会在解决方案下新建个单元测试的项目)

顾星河 | 园豆:7281 (大侠五级) | 2018-09-05 09:12
0

黑盒测试就是功能测试,测试人员以普通用户的角度来测试,不知道功能的实现逻辑。
白盒就和黑盒反过来,需要知道功能的逻辑,然后真对每一个逻辑进行测试。
单元测试通常都是开人员写的,粒度要小到每一个函数,针对每个函数来一个测试用例。

wdwwtzy | 园豆:114 (初学一级) | 2018-09-05 10:20
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册