灰盒测试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

10步灰盒法
5 6 7 8 9 10
11
3.4灰盒测: 1、投入的时间比黑盒测试大概多20-40%的时间; 2、对测试人员的要求比黑盒测试高;灰盒测试要求 测试人员清楚系统内部由哪些模块构成,模块之间 如何协作。 3、不如白盒测试深入; 4、不适用于简单的系统。所谓的简单系统,就是简 单到总共只有一个模块。由于灰盒测试关注于系统 内部模块之间的交互。如果某个系统简单到只有一 个模块,那就没必要进行灰盒测试了。

10
3.3灰盒测试的步骤
步骤 说明
1 2 3 4
确定程序的所有输入和输出 确定程序所有状态 确定程序主路径 确定程序的功能 产生试验子功能X的输入。这里X为许多子功能之一 制定验证子功能的X的输出 执行测试用例X的软件 检验测试用例X结果的正确性 对其余子功能。重复7和8步 重复4-8步,然后再进行第9步。进行回归测试

6
3.1灰盒测试的定义
灰盒测试与单元测试的区别 首先,在进行单元测试时,需要写一些测试代码 (即“桩代码”stub)。通常测试代码和被测试代码 通常是同种语言(比如Java的单元测试通常也用Java 来写),且测试代码和被测试代码的耦合很紧密。因 此,单元测试通常由开发人员来完成的,测试人员的 能力未必能胜任。 其次,单元测试的颗粒度会更细(会细到类一级、 函数一级),而灰盒测试仅仅到模块一级。
9
3.2灰盒测试的准备
1、在测试中,部署产品之外,还要安装源代码。从 源代码编译生成的目录中运行软件。 2、需要代码覆盖率工具的配置;部署可以针对本软 件开发语言的代码覆盖率工具; 3、测试人员要具备阅读代码的能力,其对开发语言 的熟悉程度和程序设计经验多少决定了采用灰盒测试 能够取得多大的好处,所以配置这方面的测试人员或 进行必要的培训是必要的。
软件测试方法和技术
灰盒测试
培训目标
理解灰盒测试概念以及与白、黑盒、单元测试的 联系与区别 了解灰盒测试前准备工作 掌握灰盒测试步骤 能够在合适的场合运用灰盒测试

本章要点
3.1灰盒测试的定义
3.2灰盒测试的准备
3.3灰盒测试的步骤 3.4灰盒测试实例
3.1灰盒测试的定义
1999年,美国洛克希德公司发表了灰盒测试法的论 文,提出了灰盒测试法。 单纯从名称上来看,灰盒测试是介于黑盒测试与白盒 测试之间的一种测试方式。 灰盒测试是基于程序运行时的外部表现同时又结合程 序内部逻辑结构来设计用例,执行程序并采集程序路 径执行信息和外部用户接口结果的测试技术。

4
3.1灰盒测试的定义
灰盒测试与黑盒测试的区别 如果某软件包含多个模块,当你使用黑盒测试时,你 只要关心整个软件系统的边界,无需关心软件系统内 部各个模块之间如何协作。而如果使用灰盒测试,你 就需要关心模块与模块之间的交互。这是灰盒测试与 黑盒测试的区别。

5
3.1灰盒测试的定义
灰盒测试与白盒测试的区别 在灰盒测试中,无需关心模块内部的实现细节。 对于软件系统的内部 模块,灰盒测试依然把它当成一 个黑盒来看待。而白盒测试还需要再深入地了解内部 模块的实现细节。

7
3.1灰盒测试的定义
优点: 1、 能够进行基于需求的覆盖测试和基于程序路径 覆盖的测试; 2、 测试结果可以对应到程序内部路径,便于bug的 定位、分析和解决; 3、 能够保证设计的黑盒测试用例的完整性,防止 遗漏软件的一些不常用的功能或功能组合; 4、 能够需求或设计不详细或不完整对测试造成的 影响。
相关文档
最新文档