ch52白盒测试.ppt

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

Microsoft Confidential 软件白盒测试 概览 在本章中,我们将学习: 结构性白盒测试概述 程序结构分析 逻辑覆盖 结构性测试案例 课程目录 结构测试概述 程序结构分析 逻辑覆盖 结构测试案例分析 结构测试工具 结构性测试(1) 程序实现是已知的,是测试人员能够根据功能实际实现的方式来标识测试用例,又称“白盒测试”、“透明盒测试”。 结构性测试(2) 功能性测试与结构性测试比较 单独使用都有其局限性; 最好的方法:结合两种方法。 结构测试定义 把测试对象看做一个透明的盒子 白盒测试是根据被测程序的内部结构设计测试用例并完成测试的一种测试方法 白盒测试或逻辑驱动测试 基于一个应用代码的内部逻辑知识,测试覆盖全部代码、分支、路径和条件 结构测试特点 可以构成测试数据使特定程序部分得到测试 有一定的充分性度量手段 可获得较多工具支持 通常只用于单元测试 结构测试的方法 静态测试方法: 程序结构分析 代码走查 代码审查 控制流分析 数据流分析 信息流分析 动态测试方法: 逻辑覆盖 语句覆盖 分支覆盖 条件覆盖 分支-条件覆盖 路径覆盖 代码覆盖率 采用白盒法进行测试时,考虑的是测试用例对程序内部逻辑的覆盖程度 最彻底的白盒法是覆盖程序中的每一条路径,但这往往无法实现 采用其它一些标准来量度覆盖的程度,并希望覆盖程度尽可能高些 课程目录 结构测试概述 程序结构分析 逻辑覆盖 结构测试案例分析 结构测试工具使用 静态测试 静态测试包括代码审查和代码走查,此方法是软件测试的有效手段 静态测试技术特点 是指无须执行被测代码,而是借助专用的软件测试工具评审软件文档或程序,度量程序静态复杂度,检查软件是否符合编程标准,借以发现编写的程序的不足之处,减少错误出现的概率。静态测试在主机上完成,不需目标系统支持,测试的主要内容有编程标准验证、数据流分析技术、质量度量信息、代码结构可视化显示、测试外壳的创建。由此看出,静态测试只是对代码进行扫描分析,检测它的语法规则复杂度等是否符合要求,主要是为软件的质量保证提供依据,以提高软件的可靠性和易维护性 静态测试可以手工、自动; 静态测试技术特点 静态测试不必动态地执行程序,也就不必要进行测试用例设计和结果判读等工作; 静态测试可以由人工进行,充分发挥人的逻辑思维优势。 静态测试试是不需要特别条件,容易开展。 桌面检查 桌面检查由程序员阅读自己所编的程序。 存在一下问题: 心理上的原因,没有发现错误的欲望; 人存在思维定势; 如果对功能理解错误,不容易纠正; 相当于调试程序。 代码走查与代码审查 Code Inspection Walkthrough: 是由若干程序员与测试员组成一个小组,集体阅读并讨论程序或者用“脑”执行并检查程序的过程。 分两步走: 预先做准备工作; 举行会议并讨论; 代码走查与代码审查的优点 避免了桌面检查的问题; 一旦发现错误,就可以定位错误的位置和性质,调试所需要化的代价低; 一次能够揭示一批错误,而不是一个错误; 避免了动态调试的一些问题; 代码走查与代码审查的优势 能够有效地发现30%~70%的逻辑设计和编码错误; IBM统计使用代码审查的方法,错误的检测效率高达全部查处错误的80% Myers的研究发现代码审查和代码走查平均查处全部错误的38%。 研究表明:使用代码走查与代码审查发现某类错误比用计算机测试更有效,而对另一类错误情况正好相反。 代码走查与代码审查与计算机测试是相互补充的,缺少任何一种方法都会使错误的检测率损失。 代码审查 代码审查测试内容包括: 检查代码和设计的一致性; 检查代码对标准的遵循、可读性; 检查代码的逻辑表达的正确性; 检查代码结构的合理性; 代码审查是由一组程序和错误检查技术组成,并且以代码审查组的方式进行。 代码审查组 代码审查组由4个人组成,1个组长,组长的条件: 称职的程序员;但不是被测程序的编写者; 不需要对所检查的程序很熟悉; 要有较强的组织协调能力和语言能力; 组长的职责: 分配资料; 安排计划; 主持会议; 纪录并保存被发现的错误; 代码审查组 其余成员: 资深的程序员 程序编写者; 专职测试人员; 代码审查过程 准备: 组长将程序目录和设计说明书分发给小组成员。 成员熟悉材料; 被测试程序的设计和编码人员想审查组详细说明所准备的材料;特别是代码的功能和功能间的关系; 程序阅读: 审查组人员仔细阅读代码和相关资料,对照代码审查单标出明显的缺陷及错误。 代码审查过程 跟踪及报告: 会后将发现的错误登记报表并交给程序开发人员; 如果发现错误较多或发现重大错误,在改正后,组长要再次组织审查会议; 审查会议要限制在1.5小时~2小时以内。 审查过程所需要的主要技术是代码审查单,通常将程序设计

文档评论(0)

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

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

1亿VIP精品文档

相关文档