黑盒测试是以用户的角度、从输入数据与输出数据的对应关系出发进行测试的,黑盒测试主要 发现以下几类错误: 验证是否有不正确或遗漏的功能? 接口测试方面,验证输入能否正确地接受?输出的结果是否正确? 是否有数据结构错误或外部信息访问错误? 性能是否能够满足要求? 是否有初始化或终止性错误? 从理论上讲,在进行黑盒测试过程中,需要采用穷举法进行测试,需要对全部功能所有可能出 现的情况进行覆盖测试,不仅需要测试合法的输入条件,还要测试不合法的输入条件,并且大多数 的缺陷是通过输入不合法的测试条件测试出来的,因此测试条件有无穷多种。但在实际测试过程中 是不可能这样做的,这样会导致测试成本太高,所以需要制定测试方法和策略来指导测试的实施, 保证软件测试有计划地进行。
常用的黑盒测试设计方法有以下几种: 等价类划分法; 边界值测试法; 错误推测法; 因果图法; 场景法; 判定表法; 正交实验法。 目前大部分企业将产品阶段的黑盒测试规划到系统测试阶段,但对于有项目外包业务的企业来 说,还需要经历验收测试阶段,主要验证产品是否达到需求说明书的要求,而完成的好坏决定着外验收测试;二是找第三方测评机构进行评测。 随着软件测试的发展,黑盒测试形成了两个重要的分支:性能测试和自动化测试。在实际工作 中,一个好的产品或系统不仅仅功能要正确,其性能也是质量表现的重要一环,所以一些企业根据 实际需要开展了性能测试。而自动化测试的目的更多的是为降低手工测试的成本,因为纯粹功能的 黑盒测试都是手工测试,是由手工不停地重复测试,这样测试工程师会出现情绪不高的现象,并且 激情会逐渐消退,因此一些企业就引进了自动化测试工具,将一些可以使用自动化测试工具进行测 试的功能实现自动化测试,降低了测试成本,提高了测试的全面性,这些方法在产品测试阶段经常 被用到。