黑盒测试
又称为数据驱动测试或者功能测试。在测试时,把被测程序视为一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下进行。采用黑盒测试的目的主要是在已知软件产品所应具有的功能基础上进行,黑盒测试检查是否存在以下问题:
(1)检查程序功能能否按需求规格说明书的规定正常使用,测试各个功能是否有遗漏,测试性能等特性是否满足;
(2)检测人机交互是否错误,检测数据结构或外部数据库访问是否错误,程序是否能适应当地接收输入数据而产生正确的输出结果,并保持外部信息(如数据库或文件)的完整性;
(3)检测程序初始化和终止方面的错误。
常见的黑盒测试的方法:等价类,边界法,判定表等。详情见http://t.csdn.cn/YP2nQ
白盒测试
又称为结构测试或者逻辑驱动测试。白盒测试是测试被测单元内部如何工作的一种方法。其目的是通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试。
常见白盒测试的方法:语句覆盖,判定覆盖,条件覆盖,判定条件覆盖,条件组合覆盖,路径覆盖。
灰盒测试
介于两者之间,既要关心内部结构和内部特性,还要关心功能是否符合要求。
为什么不直接使用灰盒测试?
灰盒测试没有白盒测试详细,完整,黑盒测试是覆盖产品功能范围最广的测试,所以灰盒测试是不能取代白盒测试和黑盒测试的,但是黑盒测试是可以取代灰盒测试的,但是不建议,需要消耗很大的代码,需要设计很多测试用例。
面试题:
常见的测试方法有哪些?哪种测试方法用的多?
白盒测试和黑盒测试。在工作中需要根据实际情况结合白盒测试和黑盒测试。
(也可以根据面试情况介绍白盒测试的逻辑覆盖法,基本路径法等,和黑盒测试的等价类等方法)