软件测试通过各种测试来捕获软件中隐藏的错误、缺陷、意料之外的运行结果、以及功能上的不一致性。
目前业界常用的软件测试方法有三大类:黑盒、白盒和灰盒测试方法。它们在开展方式上截然不同,在功能用途上也各有优缺点。
一、黑盒测试
黑盒测试又叫功能测试、数据驱动测试或基于需求规格说明书的功能测试。该类测试注重于测试软件的功能性需求。
黑盒测试方法着重测试软件的功能需求,是在程序接口上进行的测试,主要是为了发现以下错误:1.是否有功能错误,是否有功能遗漏。2.是否能够正确地接收输入数据并产生正确的输出结果。3.是否有数据结构错误或外部信息访问错误。4.是否有程序初始化和终止方面的错误
二、白盒测试
白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,即清楚盒子内部的东西以及里面是如何运作的。
白盒测试通常是由专业开发人员去执行的。他们运用专业知识,以及源代码分析与调试专用工具,在弄清软件的内部结构和代码细节的基础上,逐步检查语句和条件、代码的路径、数据流、以及各种有效或无效的输入,验证程序是否能按照预期输出结果。据此,开发人员可以开展有针对性的修复,以确保没有隐藏的错误、或容易产生缺陷的元素。
三、灰盒测试
灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。
网友评论