赞
踩
灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。
定义: 灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识和与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。
灰盒测试的思想: 是基于程序运行时的外部表现又结合程序内部逻辑结构来设计测试用例,执行程序并采集程序路径执行信息和外部用户接口结果的测试技术。灰盒测试法旨在验证软件满足外部指标以及软件的所有通道或路径都进行了检验。
灰盒测试的特性:
①灰盒测试同黑盒测试一样,也是根据需求文档来进行测试用例的设计。
②灰盒测试通常在程序员做完白盒测试之后,在功能测试人员进行大规模集成测试之前。
③灰盒测试需要了解代码工程的实现。
④灰盒测试是通过类似白盒测试的方法进行的,是通过编写代码、调用函数或者封装好的接口进行,但无需关心程序内部的实现细节,依然可把它当成一个黑盒。
⑤灰盒测试是有测试人员进行的。
优点:
①能够进行基于需求的覆盖测试和基于程序路径覆盖的测试。
②测试结果可以对应到程序内部路径,便于 bug 的定位、分析、解决。
③能够保证设计的黑盒测试用例的完整性,防止遗漏软件的一些不常用的功能或功能组合。
④能够避免需求或设计不详细或不完整对测试造成的影响。
缺点:
①投入的时间比黑盒测试大概多 20%-40%。
②对测试人员的需求比黑盒测试高。
③灰盒测试要求测试人员清楚内部系统结构由哪些模块组合,模块之间如何协作。
④不如白盒测试深入。
⑤不是用于简单系统。
目标:
①确保软件的质量。
②提高软件质量功能。
测试任务:
①寻找 bug。
②避免软件开发过程中的缺陷。
③衡量软件的品质。
④关注用户的需求。
测试步骤:
①确定程序的所有输入和输出。
②确定程序所有状态。
③确定程序主路径。
④确定程序的功能。
⑤产生实验子功能 X 的输入。
⑥制定验证子功能的 X 的输出。
⑦执行测试用例 X 的软件。
⑧检验测试用例 X 的结果正确性。
⑨对其余子功能,重复⑦和⑧。
⑩重复④~⑧,然后进行⑨进行回归测试。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。