这组文章来源:中科永联高级技术培训中心(www.itisedu.com)

  黑盒测试(Black-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。

  黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其他类型的错误。

黑盒测试的功能

  黑盒测试试图发现以下类型的错误:

  1)功能错误或遗漏;

  2)界面错误;

  3)数据结构或外部数据库访问错误;

  4)性能错误;

  5)初始化和终止错误。

黑盒测试的优点

  1. 基本上不用人管着,如果程序停止运行了一般就是被测试程序crash了

  2. 设计完测试例之后,下来的工作就是爽了,当然更苦闷的是确定crash原因

黑盒测试的缺点

  1. 结果取决于测试例的设计,测试例的设计部分来源于经验,OUSPG的东西很值得借鉴

  2. 没有状态转换的概念,目前一些成功的例子基本上都是针对PDU来做的,还做不到针对被测试程序的状态转换来作

  3. 就没有状态概念的测试来说,寻找和确定造成程序crash的测试例是个麻烦事情,必须把周围可能的测试例单独确认一遍。而就有状态的测试来说,就更麻烦了,尤其不是一个单独的testcase造成的问题。这些在堆的问题中表现的更为突出。