灰盒测试


灰盒测试

文章插图
灰盒测试【灰盒测试】灰盒测试 , 是介于白盒测试与黑盒测试之间的一种测试 , 灰盒测试多用于集成测试阶段 , 不仅关注输出、输入的正确性 , 同时也关注程式内部的情况 。灰盒测试不像白盒那样详细、完整 , 但又比黑盒测试更关注程式的内部逻辑 , 常常是通过一些表征性的现象、事件、标誌来判断内部的运行状态 。
基本介绍中文名:灰盒测试
外文名:Grey Box Testing
特点:关注内部逻辑
目标:确保软体的质量、提高软体质量
套用领域:软体测试
概念定义灰盒测试由方法和工具组成 , 这些方法和工具取材于应用程式的内部知识和与之互动的环境 , 能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率 。学术含义灰盒(Gray Box)是一种程式或系统上的工作过程被局部认知的装置 。灰盒测试 , 也称作灰盒分析 , 是基于对程式内部细节有限认知上的软体调试方法 。测试者可能知道系统组件之间是如何互相作用的 , 但缺乏对内部程式功能和运作的详细了解 。对于内部过程 , 灰盒测试把程式看作一个必须从外面进行分析的黑盒 。
灰盒测试

文章插图
灰盒测试灰盒测试通常与web服务套用一起使用 , 因为儘管应用程式複杂多变 , 并不断发展进步 , 网际网路仍可以提供相对稳定的接口 。由于不需要测试者接触原始码 , 因此灰盒测试不存在侵略性和偏见 。开发者和测试者间有明显的区别 , 人事冲突的风险减到最小 。然而 , 灰盒测试相对白盒测试更加难以发现并解决潜在问题 , 尤其在一个单一的套用中 , 白盒测试的内部细节可以完全掌握 。灰盒测试结合了白盒测试和黑盒测试的要素 。它考虑了用户端、特定的系统知识和操作环境 。它在系统组件的协同性环境中评价套用软体的设计 。灰盒测试由方法和工具组成 , 这些方法和工具取材于应用程式的内部知识和与之互动的环境 , 能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率 。灰盒测试涉及输入和输出 , 但使用关于代码和程式操作等通常在测试人员视野之外的信息设计测试 。目的任务软体测试是软体开发过程的重要组成部分 , 是用来确认一个程式的品质或性能是否符合开发之前所提出的一些要求 。软体测试就是在软体投入运行前 , 对软体需求分析、设计规格说明和编码的最终複审 , 是软体质量保证的关键步骤 。软体测试是为了发现错误而执行程式的过程 。软体测试在软体生存期中横跨两个阶段 , 通常在编写出每一个模组之后就对它做必要的测试(称为单元测试) 。编码和单元测试属于软体生存期中的同一个阶段 。在结束这个阶段后对软体系统还要进行各种综合测试 , 这是软体生存期的另一个独立阶段 , 即测试阶段 。
灰盒测试

文章插图
灰盒测试目的第一是确认软体的质量 , 其一方面是确认软体做了你所期望的事情(Do the right thing) , 另一方面是确认软体以正确的方式来做了这个事件(Do it right) 。第二是提供信息 , 比如提供给开发人员或程式经理的反馈信息 , 为风险评估所準备的信息 。第三软体测试不仅是在测试软体产品的本身 , 而且还包括软体开发的过程 。如果一个软体产品开发完成之后发现了很多问题 , 这说明此软体开发过程很可能是有缺陷的 。因此软体测试的第三个目的是保证整个软体开发过程是高质量的 。衡量标準软体质量是由几个方面来衡量的:一、在正确的时间用正确的的方法把一个工作做正确(Doing the right things right at the right time) 。二、符合一些套用标準的要求 , 比如不同国家的用户不同的操作习惯和要求 , 项目工程中的可维护性、可测试性等要求 。三、质量本身就是软体达到了最开始所设定的要求 , 而代码的优美或精巧的技巧并不代表软体的高质量(Quality is defined as conformance to requirements,not as“goodness”or“elegance”) 。