
初入软件测试行业,无论是经过相关的培训,还是通过周围同事的介绍,大家都会知道软件测试有两种基本分类:黑盒测试与白盒测试。那么我们眼中的黑盒测试是什么样的呢?
维基百科中给的解释是,黑盒测试,软件测试的主要方法之一,也可以称为功能测试、数据驱动测试或基于规格说明的测试。测试者不了解程序的内部情况,不需具备应用程序的代码、内部结构和编程语言的专门知识。只知道程序的输入、输出和系统的功能,这是从用户的角度针对软件界面、功能及外部结构进行测试,而不考虑程序内部逻辑结构。测试案例是依应用系统应该做的功能,照规范、规格或要求等设计。测试者选择有效输入和无效输入来验证是否正确的输出。
简单的说,黑盒测试就是在不了解开发代码逻辑实现的情况下,根据产品提出的需求文档,进行用例设计,然后对开发提测的程序进行测试。黑盒测试针对的测试对象可以使一个系统、一个子系统、一个模块、一个子模块、一个函数等。黑盒测试常见的测试类型包括功能性测试、容量性测试、负载测试、恢复性测试。
黑盒测试的特点有哪些呢?
-
对于更大的代码单元来说,比白盒测试效率更高;
-
测试人员不需要了解实现的细节;
-
从用户的角度进行测试,很容易被大家理解和接受;
-
有助于暴露任何与产品需求不一致或者有歧义的问题;
-
没有清晰和简明的需求文档,测试用例设计会比较困难;
-
不能控制内部执行路径,会有很多内部程序路径没有被测试到;
-
不能直接针对特定的程序段进行测试,这些程序如果非常复杂,可能很多隐藏的问题不能及时发现。
那么该如何进行黑盒测试呢?针对黑盒测试的这些特点,我们组所进行的黑盒测试主要都包含以下一些内容:
-
产品需求评审
-
测试计划制定
-
测试用例设计
-
测试用例执行
-
回归测试
-
针对软件的各类评测
-
验收测试
-
上线验证
在进行产品需求评审的时候,测试的参与实际上就是在进行合理性和易用性的测试了。在测试用例设计和执行时,是在进行对被测对象进行功能性的测试,主要包括功能实现的正确性验证、对异常处理的容错性和健壮性验证以及各个功能之间相互的影响。针对软件的各类评测中,还会进行稳定性、性能、兼容性、安全性的验证。这样充分的保证了测试覆盖度,保证了产品的质量。
在后续的日子里,我们会针对不同的系统平台、不同的测试对象的测试方法进行详细的介绍。
如需转载该篇文章,请注明来自“搜狗测试”