标题:白盒测试,黑色测试,灰盒测试
白盒测试:已知产品的内部工作过程,可以通过测试验证每种内部操作是否符合设计规格要求,所有内部成分是否已经过检查。
黑盒测试:已知产品的功能设计规格的用户手册,可以验证每个功能都是否实现,每个实现了的功能是否定符合要求,以及产品的性能是否满足用户的要求。
白盒测试和黑盒测试的区别:①在操作白盒时,还能够看到它里面的运作过程;在操作并运行黑盒时,除了运作结果以外什么也看不到。
②软件的白盒测试是对软件的过程性细节做细致的检查,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例;黑盒测试意味着测试是在软件的接口处进行,测试人员完全不用考虑程序的逻辑结构和内部特性。
③白盒测试方法所要求的技术也很高,相应的测试成本也较大;黑盒测试方法对技术的要求比较低,方法简单有效。
④白盒测试即使进行了穷举路径测试,也不可能查出所以程序违反设计规范的地方;黑盒测试可以从头到尾进行数据完整性测试。
⑤白盒测试方法的准备时间很长,完成一个覆盖全部程序语句、分支的测试,一般要花费比编程更长的时间;黑盒测试不去考虑程序内部结构和内部特性,主要验证软件所应该具有的功能是否已实现。
灰盒测试:基于对程序内部细节有效认知的软件调试方法。
与白盒测试的区别:灰盒把内部模块当做黑盒来看待,而白盒需要深入了解内部模块的实现和细节。
与黑盒测试的区别:灰盒关心模块之间的交互,黑盒关心整个软件边界而无需关心各个模块之间的协作。