软件测试技术基础(第二章程序结构静态)研讨.ppt

软件测试技术基础(第二章程序结构静态)研讨.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试技术基础 (Foundation of Software Testing Technology) 第二章 程序结构静态分析 主讲教师: 实践辅导教师: 主要内容 代码审查 代码走查 桌面检查 同行评审 控制流分析 数据流分析 信息流分析 今天,不是每一个测试人员都阅读代码,但是研究代码确是一种测试方法,被广泛接受。 以下因素影响是否采用阅读代码作为测试工作的一部分 程序的大小和复杂性 开发团队的大小 开发期限 团队文化和背景 人工测试 人工测试可以在程序代码编写完,基于计算机的测试没有开始以前进行。 两种主要的人工测试方法是: 代码审查(code inspections) 走查(walkthrough) 人工测试技术的重要性 错误发现得越早,改正错误的成本越低,正确改正错误的可能性也越大; 程序员在开始基于计算机的测试时似乎要经历一个心理上的改变。压力会急剧增长,且要“尽可能快地修正这个缺陷”。由于这些,所以,程序员在改正某个基于计算机测试发现的错误时所犯的失误,可能要比改正早期发现的问题时所犯的失误会更多一些的。 代码审查(code inspections) 人员 一个代码检查小组通常是由四人组成, 一人发挥着协调作用 一人是该程序的编码人员 一人是其他成员通常是程序的设计人员 一人是测试专家。 代码审查 所谓的代码审查,其实就是以组为单位阅读代码,是一系列规程和错误检查技术的集合。该过程通常将注意力集中在发现错误上,而不是纠正错误 。 内容 检查代码和设计的一致性 检查代码对标准的遵循、可读性 检查代码的逻辑表达的正确性 检查代码结构的合理性 代码审查 步骤: 第一步:小组成员提前阅读设计规格书、程序文本等相关文档 第二步:召开程序审查会,开发人员读程序,审查小组讨论、发现、解决问题 第三步:跟踪与报告 代码审查 在代码审查过程中,一个重要的部分是需要对照一份编程错误列表,来分析程序是否存在常见的错误。 错误列表 错误列表在很大程度上是独立于编程语言的 可以把自己使用的编程语言中特有的错误,以及代码检查发现的错误补充到这份错误列表中去 代码审查 错误列表的总的构架。该列表共分为八个部分: 数据引用错误 数据声明错误 运算错误 比较错误 控制流程错误 输入/输出错误 接口错误 其他检查。 每一部分中细分了很多项 代码审查 在代码审查的时间和地点上的选择上,应避免所有的外部干扰; ?代码审查会议的理想时间应在90-120分钟之内; ?大多数的代码审查都是按每小时大约阅读150行代码的速度进行; ?对大型软件的审查应安排多个代码检查会议同时进行,每个代码审查会议处理一个或几个模块或子程序。 代码审查 代码审查附带的几个有益的作用 程序员通常会得到编程风格、算法选择及编译技术等方面的反馈信息; 其他参与者也可以通过接触其他程序员的错误和编程风格而同样受益匪浅; 代码检查还是早期发现程序中最易出错部分的方法之一,有助于在基于计算机的测试过程中将更多的注意力集中在这些地方。 代码走查(walkthrough) 人员 三到四人最好 一人是这段代码的作者(可做会议主持) 一个类似于检查中的仲裁人 一个人担当秘书的角色(记录所有发现的错误) 一个人担当测试人员的角色 最佳人员组合 一位极富经验的程序员; 一位程序设计语言专家; 一位程序员新手(可以给出新颖、不带偏见的观点); 最终将维护程序的人员; 一位来自其他不同项目的人员; 一位来自该软件编程小组的程序员。 代码走查 代码走查就是对软件文档进行书面检查。它通过人工模拟执行源程序的过程,检查软件设计的正确性。人工模拟也像计算机执行那样,可以仔细推敲、校验和核实每一步的执行结果,进而确定其执行逻辑、控制模型、算法和使用参数与数据的正确性。 步骤 第一步:小组成员提前阅读设计规格书、程序文本等相关文档 第二步:利用测试用例,使程序逻辑运行,记录程序的踪迹,发现、讨论、解决问题 第三步:跟踪与报告 代码走查 缺点 功能性测试很难实现 有太多的条件 有太多的测试用例 代码审查和代码走查的共同之处 方法:组成一个小组来阅读或直观检查特定的程序;并在“头脑风暴会”上要形成统一的目标:找出错误,但不必找出改正错误的方法。换句话说,是测试,而不是调试。该组开发人员(三至四人为最佳)是对代码进行审核,其中参加者当中只有一人是程序编写者;也可以说它是对过去桌面检查过程的改进。 优点:一旦发现错误,就可以在代码中对其进行精确定位,这就降低了调试的成本;还通常可以发现成批的错误,这样就可以一同得到修正,这也优于机器测试,因为后者只能暴露出错误的某个表症。 效果:通常是能够有效地查找出30%-70%的逻辑设计和编码错误,但不能有效地查找出高层次的设

文档评论(0)

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

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

1亿VIP精品文档

相关文档