软件工程7_1(概论、白盒).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第七章 软件测试 概论 在本章中,我们将研究: 1、错误类型和如何分类错误 2、 测试的目的 3、单元测试 4、 集成测试策略 5、测试计划 6、 何时停止测试 有许多种测试方法,这里将为你介绍几种测试方法,它们能够使你为用户发布一个高质量的系统。 在开发过程中怎样在需求和设计的复查中帮助我们探索错误。 但是测试是以发现错误为核心,有许多种方法使我们在测试上下的功夫更有效率更有效果。 概论 Jones广泛地研究了程序员的生产力,包括错误的查找和修正的本性。查阅了历史上一千万行的代码,他发现代码检查纠除了85%多的错误。 实际上,没有一个能够除去一半以上的错误。Jones调查了建议典型的准备时间和会议时间。 表 典型的准备时间和会议时间(1991) 开发产品 准备时间 会议时间 需求文档 每小时25页 每小时12页 功能描述 每小时45页 每小时15页 逻辑描述 每小时50页 每小时20页 源代码 每小时150行代码 每小时75行代码 用户手册 每小时35页 每小时20页 概论 韦勒( 1993) 在公牛信息系统3 年检查数据。 来自几乎7,000 个检查会议的尺度包括大约11557 个错误信息和14677 页的设计文献。他发现小组的有效性和效率取决于他们对产品的熟悉: 越熟悉,越好。 另一方面,韦勒发现在一项12000 行C语言的工程上,需求和设计没被复查; 检查从代码开始。 比较代码检查数据和测试数据,韦勒发现代码检查主要鉴定编码或者低水平设计错误。 测试 还要发现需求和结构的错误。因此,代码检查的结果没代表真实的系统质量。 表 发现活动中发现的错误(Jones 1991) 发现活动 每千行代码发现的错误 需求复查 2.5 设计复查 5.0 代码检查 10.0 集成测试 3.0 接受性测试 2.0 概论 Grady在惠普解释到,为代码检查做计划一般需要2个小时,接着30分钟的小组会议。然后个人准备2个小时发现错误和90分钟汇报错误。小组花费30分钟集体讨论错误的发现并推荐采取的措施。当错误修正后,代码检查会议的主持人再花费半个小时书写和发布摘要文档。 Jones总结了他的工程信息的数据,画了一个不同的图,比较复查,检查和其他发现方法的不同。 代码检查善于发现代码错误,但是原型系统更容易鉴别需求的错误。 Fagan在IBM发布检查代码的方针后,许多其它的组织机构,包括惠普,ITT和ATT都采纳了代码检测作为推荐或标准实施。 概论 假想你已经编完你的组件,自己检查完毕,小组复查完毕。下一步测试是,以更加结构化的方式详细审查确保它的正确性。 一个程序是正确的,当它正确实现设计中说明的功能和数据和它与其它组件正确接口。 一种研究程序的正确性方式是把代码看成语句的逻辑流。如果我们能够用正式的逻辑系统复写程序,就能测试语句的正确性。 公式证明技巧。按照一系列步骤转换代码为逻辑副本,表达遵循数学逻辑的规则。 §7.1 基本概念 软件产品最大的开发成本是检测软件错误、修正软件错误的成本。 在整个软件开发中: 测试工作量≥50% 软件质量问题 以软件测试为中心的软件质量保障技术 软件 静态测试技术 质量 动态测试技术 控制 配置管理技术 技术 修改控制与管理技术 软件测试是保证软件质量,提高 软件可靠性的关键 软件测试的目标 (1)预防错误: 几乎不可实现 (2)发现错误: 软件测试目的 7.1.1 测试的目的与地位 G.J.Myers在软件测试技巧中认为: “程序测试是为了发现错误而执行程序的过程.” 测试 (test) 调试 (debug) 程序中的问题根源可能在开发前期的各阶段,解决、纠正错误也必须追溯到前期工作。 测试与开发前期工作的关系 测试阶段工作步骤 单元测试: 检验每个模块能否单独 工作. 集成测试: 检验概要设计中模块接

文档评论(0)

ffpg + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档