白盒测.试技术.doc

  1. 1、本文档共60页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
白盒测.试技术

第6章 白盒测试技术 相关知识点 软件测试方法:分为两类 (1)静态测试:不要求在计算机上实际执行所测程序,主要以一些人工的模拟技术对软件进行分析和测试 (2)动态测试:通过输入一组预先按照一定的测试准则构造的实例数据动态运行程序,而达到发现程序错误的过程,特点如下: ●必须生成测试数据来运行被测试程序,取得程序运行的真实情况、动态情况,进而进行分析 ●测试质量依赖于测试数据 ●生成测试数据,分析测试结果的工作量大,使开展测试工作费时、费力、费人 ●动态测试中涉及多方面工作,人员多,设备多,数据多,要求有较好的管理和工作规程 一.概述 1. 定义 白盒测试:也称结构测试或逻辑驱动测试,按照程序内部的结构对程序进行测试,通过测试来检查产品内部动作是否按照设计规格说明书的规定正常进行,检查程序中的每条通路是否能按照预定要求正确工作。 白盒测试又称为逻辑驱动测试,根据软件概要设计和详细设计说明文档生成用于白盒测试的测试用例。 2. 测试内容 把测试对象看成是一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序的所有逻辑路径进行测试,通过不同点检查程序的状态,确定实际的状态与预期的状态一致 3. 测试基本技术 (1)词法分析与语法分析 (2)静态错误分析 (3)程序插桩技术 4. 测试方法 (1)代码检查法 (2)静态结构分析法 (3)静态质量度量法 (4)逻辑覆盖法 (5)基本路径测试法 (6)域测试 (7)符号测试 (8)Z路径覆盖 (9)程序变异 5.黑盒测试与白盒测试比较 黑盒测试 白盒测试 不涉及程序结构 考查程序逻辑结构 用软件规格说明书生成测试用例 用程序结构信息生成测试用例 可适用于从单元测试到系统联调 适用于单元测试和集成测试 某些代码段得不到测试 对所有逻辑路径进行测试 二.白盒测试基本技术 1.词法和语法分析(获取信息、作用) (1)获取信息 可以获取软件组成的重要基本因数,如变量标识符、过程标识符、常量等 组合获取的基本因数,可以得到软件的基本信息,如: 标号交叉引用表:列出各模块中出现的全部标号及标号的属性,模块以外的全局、计算标号 变量交叉引用表:列出变量定义及引用信息,变量的属性,变量类型(全局、局部) 子程序、宏和函数表:列出各个子程序、宏及函数的属性,输入、输出参数信息 等价表:列出在等价语句和等值语句中出现的全部变量和标号 常数表:列出全部数字常数和字符常数 (2)作用 直接从表中查出说明/使用错误,如标号交叉引用表、变量交叉引用表 为用户提供辅助信息,如子程序、宏和函数表、等价表、常数表 用来做错误预测和程序复杂度计算,如操作符和操作数的统计表 2.静态错误分析(类型和单位分析、引用分析、表达式分析、接口分析) 用于确定在源程序中是否有某类错误或‘危险’结构,包括以下几种: 类型和单位分析 对源程序的类型进行检查,为了强化检查效果,扩充一些新的数据类型,进行静态预处理程序,分析程序中的类型错误 引用分析 对程序中变量的引用进行检查,发现引用异常错误(如变量在定义前被引用,变量定义后未被引用)。 采用深度优选的方法遍历程序流图的每一条路径 建立引用异常的探测工具,包括变量定义表和变量引用表 表达式分析 对表达式进行分析,以发现和纠正在表达式出现的错误,如: 在表达式中不正确的使用了括号造成错误 数组下标越界错误 除数为零 浮点数计算的误差(最复杂) 接口分析 接口一致性是程序的静态错误分析和设计分析共同研究的题目,接口分析主要对下内容时进行一致性的分析: 各模块之间接口一致性 模块与外部数据库的接口一致性 形参与实参在类型,数量,顺序,维数,使用上的一致性 全局变量和公共数据区在使用上的一致性 3.程序插桩技术(设计时考虑的问题、探测点设置位置、断言语句) 概述 在动态测试中,是一种基本的测试手段,有广泛的应用 主要借助向程序中插入操作,来实现测试目的的方法(即向源程序中添加一些语句(也称探测器),实现对程序语句的执行、变量的变化等情况进行检查) 设计时考虑的问题 明确要探测哪些信息 在程序的什么部位设置探测点 需要设计多少个探测点 探测点设置位置(以Fortran为例) 程序块的第一个可执行语句之前 entry语句的前后 有标号的可执行语句处 循环语句之后 条件语句之后 logical if语句之后 call语句之后 go to语句之后 断言语句 在程序中的特定部位插入某些用以判断变量特性的语句,使得程序执行中这些语句得以证实,从而使程序的运行特性得到证实,我们把这些插入的语句称为断言语句。 三、白盒测试方法-静态测试 静态测试:代码检查法、静态结构分析法、静态质量度量法、逻辑覆盖法、基本路径测试法、其他测试法(域测试、符号测试、Z路径覆盖、程序变异)。 代码检查法

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档