网站大量收购独家精品文档,联系QQ:2885784924

第9章 路径测试.ppt

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

第三部分 结构性测试 结构性测试 又称白盒测试、逻辑驱动测试或基于程序的测试。 基于被测程序的源代码,根据程序实现来设计测试用例,支持严格定义、数学分析和精确度量。 通过在程序的不同点检查程序的状态,确定实际的状态是否与预期的状态一致。 白盒测试 白盒测试的目的: 通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试; 在程序不同地方设立检查点,检查程序的状态,以确定实际运行状态与预期状态是否一致。 白盒测试的特点:依据软件设计说明书进行测试、对程序内部细节的严密检验、针对特定条件设计测试用例、对软件的逻辑路径进行覆盖测试。 白盒测试 白盒测试要求对被测程序的结构特性做到一定程度的覆盖,并以软件中某类成分是否都已经得到测试为准则来判断软件测试的充分性,也称为基于覆盖的测试技术。 白盒测试主要检查内容: 对程序模块的所有独立的执行路径至少测试一次; 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试一次; 在循环的边界和运行界限内执行循环体; 检查内部数据结构以确保其有效性。 白盒测试 白盒测试的实施步骤: 1.测试计划阶段:根据需求说明书,制定测试进度。 2.测试设计阶段:依据程序设计说明书,按照一定规范化的方法进行软件结构划分和设计测试用例。 3.测试执行阶段:输入测试用例,得到测试结果。 4.测试总结阶段:对比测试的结果和代码的预期结果,分析错误原因,找到并解决错误。 白盒测试 白盒测试的方法:总体上分为静态方法和动态方法两大类。 静态分析:是一种不通过执行程序,有条理地仔细审查软件设计、体系结构和代码,从而找出软件缺陷的过程。 静态分析的关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义。 审查 审查是正式、严格、具有深度的技术评审,以便尽可能准确地确定问题之所在。 审查过程的目的: 在软件开发过程中尽可能早地发现问题。 确保对重要部分达成一致意见。 审查的角色 一次审查一般需要5人至7人,这些角色是: 主审员:协调本次审查并主持讨论。 责任人:负责被审查的产品。 讲解员:在审查会上讲解被审查的产品。 审查员:审查产品。 记录员:记录在审查会议上讨论的问题。 经理:责任人的管理者。 审查对象 选择要审查的代码模块的准则: 对于正确操作产品起关键作用的模块。 复杂度较高的模块。 与过去发生错误率较高的模块功能类似的模块。 相对较新的或缺乏经验的软件程序师编写的模块。 审查标准 大多数计算机语言和信息技术的国家和国际标准可以通过以下途径获得: 国际工程协议(IEC): 国际标准化组织(ISO):www.iso.ch 信息技术标准国家委员会(NCITS): 计算机械联合会(ACM): 电子电气工程学会(IEEE): 通用代码审查清单 数据引用错误; 数据声明错误; 计算错误; 比较错误; 控制流程错误; 子程序参数错误; 输入/输出错误; 其他检查。 数据引用错误 是否引用了未初始化的变量? 数组和字符串的下标是整数值吗? 是否在应该使用常量的地方使用了变量? 变量是否被赋予不同类型的值? 为引用的指针分配内存了吗? 一个数据结构是否在多个函数或者子程序中引用,在每一个引用中明确定义结构了吗? 数据声明错误 所有变量都赋予正确的长度和类型了吗? 变量是否在声明的同时进行了初始化? 存在声明过、但从未引用或者只引用过一次的变量吗? 在特定模块中所有变量都显示声明了吗? 计算错误 计算中是否使用了不同数据类型的变量? 计算中是否了解和考虑到编译器对类型或长度不一致的变量的转换规则? 在数值计算过程中是否可能出现溢出? 除数/模是否可能为零? 变量的值是否超过有意义的范围? 对于包含多个操作数的表达式,求值的次序是否混乱,运算优先级对吗? 比较错误 比较得正确吗? 存在分数或者浮点值之间的比较吗?如果有,精确问题会影响比较吗? 每一个逻辑表达式都正确表达了吗?逻辑计算如期进行了吗?求值次序有疑问吗? 逻辑表达式的操作是逻辑值吗? 控制流程错误 如果程序包含begin…end和 do …while 等语句组,end是否对应? 程序、模块、子程序和循环能否终止? 可能存在永远不停的循环吗? 循环可能从不执行吗? 子程序参数错误 子程序接受的参数类型和大小与调用代码发送的匹配吗? 如果子程序有多个入口点,引用的参数是否与当前入口点没有关联? 常量是否当作形参传递,意外在子程序中改动? 输入/输出错误 软件是否严格遵守外部设备读写数据的专用格式? 文件或者外部不存在或者未准备好的错误情况有处理吗? 软件是否处理外部设备未连接、不可用,或者读写过程中存储空间占满等情况? 白盒测试 动态分析:主要特点是当软件系统在模拟的或真实的环境中执行之前、之中和之后 , 对软件系统行为的分析。动态分析

文档评论(0)

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

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

1亿VIP精品文档

相关文档