简洁分类 对软件内部结构的深入程度 - 黑盒测试:又叫功能测试、数据驱动测试或基于需求规格说明书的功能测试。
该测试类别注重于测试软件的功能性需求。
测试工程师无需了解程序代码的内部构造,完全模拟软件产品的最终端用户使用该软件,检查软件产品是否达到了用户的需求。
黑盒测试能更好的从用户角度来考察被测系统的功能性需求实现情况。 - 白盒测试:又称结构测试、逻辑驱动测试或基于程序代码内部构成的测试。
白盒测试需要测试工程师深入考查程序代码的内部结构、逻辑设计等。
对于白盒测试工程师来说,软件产品的内部结构是敞开的。 - 灰盒测试:通俗地讲,灰盒测试就是白加黑。一般包含性能测试、自动化测试。
灰盒测试一方面考虑程序代码的功能性表现,另一方面,又需要考虑程序代码的内部结构。
是否执行被测对象的程序代码 - 静态测试:静态的、不执行被测对象程序代码而寻找缺陷的过程。
在进行静态测试时可采用一些代码走查工具。 - 动态测试:三种主要方法(黑盒测试、白盒测试和灰盒测试)
实际的执行被测对象的程序代码,通过运行测试用例,检查与判断程序代码运行的结果与测试用例的预期结果之间是否有差异。
动态测试有四部分组成:设计测试用例、执行测试用例、分析比较输出结果、输出测试报告。
是否使用自动化测试工具 - 手动测试:测试人员手工设计测试用例并执行测试用例,对比并记录实际结果和预期结果,输出测试报告的测试活动。
可充分发挥测试工程师的主观能动性,将其智力体现在测试工作中,尽可能地发现缺陷,但同时又有一定的局限性和单调枯燥性。 - 自动化测试:利用测试工具,模拟用户业务使用流程,自动运行来查找缺陷。
优点是:快速、广泛、适用可重复性工作
缺点是只能够检查比较主要和固定的问题,难以发现新的异常。前期准备工作可能比较耗时,例如有时编写脚本会超过手动测试时间。
|
|