7软件工程_电力水利_工程科技_专业资料.pptVIP

7软件工程_电力水利_工程科技_专业资料.ppt

  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文档。上传文档
查看更多
第 7 章 软件测试 7.1 软件测试的任务和目标 7.2 软件测试方法 7.3 软件测试的步骤 7.4 调试 7.5 软件测试工具 ; 7. 1 软件测试的任务和目标 软件开发过程必须伴有质量保证活动。软件测试是软件质量保证的关键元素,它代表了规约、设计和编码的最终检查。 软件产品最大的成本是检测软件错误、修正软件错误的成本。在整个软件开发中,测试工作量一般占 30%~40%,甚至≥50%。特别是有关人命关天的软件 (如飞机控制核反应堆等)的测试,所花费的时间往往是其它软件工程活动时间之和的三到五倍。为什么要进行软件测试呢?因为软件是人编写的,所以可能不够完美。; 实例: 1963年美国飞往火星的火箭,驱动程序FOR 5 I=1,3误写成 FOR 5 I=1.3,导致火箭爆炸,损失一千万美元。 1994-1995年, 迪斯尼的狮子王软件系统软件不支持问题。 1994年Intel的pentium处理器浮点除法缺陷问题 2000年8月28日,1.13MHZ处理器可能导致程序运行被挂起 的指令执行问题。 1991年爱国者导弹防御系统,系统时钟错误积累造成跟踪 系统失去精确度问题。 1999年12月3日,美国航天局火星极地登陆飞船失踪问题。 千年虫问题,世界各地解决2000年错误超过数亿美元。;软件测试的认识的发展 人们对软件测试的认识经历了五个阶段: 阶段1 — 测试等同于调试 阶段2 — 测试是证明软件正确 阶段3 — 测试是发现软件中的错误 阶段4 — 测试是减小软件不工作的风险 (是度量软件质量要素的过程) 阶段5 —测试是产生低风险软件的一种认识上的训练; 质量管理领域权威人物J.M.Juran将质量 定义为“决定产品性能和‘满意程度’的特征”, 测试注重于产品的满意度。 测试应针对这样一种情况: 软件产品在一些特定的范围内能否满足客 户的合理要求。 通过测试过程可以评定质量风险(可能的 错误),了解被测试系统中存在的错误模式( 观察到的错误症状)。;质量控制技术;软件质量问题;7.1.1 软件测试的目标 什么是软件的测试目标? G.J.Myers在软件测试技巧中认为: 1.测试是为了寻找错误而运行程序的过程。 2.一个好的测试用例是指很可能找到迄今为止尚 未发现的错误的测试。 3.一个成功的测试是揭示了迄今为止尚未发现的 错误的测试。 ; E.W.Dijkstra指出: “程序测试能证明错 误的存在,但不能证明错误不存在。” 测试的目的是发现程序中的错误,是为了 证明程序有错, 而不是证明程序无错。把证明 程序无错当作测试目的不仅是不正确的, 完全 做不到的,而且对做好测试没有任何益处,甚 至是十分有害的。 软件测试要设法使软件发生故障,暴露软 件错误。 能够发现错误的测试是成功的测试,否则 是失败的测试。; “测试的目的是说明,程序正确地执行了它应有的功能” 这种说法正确吗? 例:判定三角形类型的程序,输入三个整数表示一个三角形的三个边长,该程序产生结果,指出该三角形是等边三角形、等腰三角形还是任意三角形。 为说明其能正确执行它的功能,可使用“测试用例” (3,4,5), (5,5,6), (6,6,6), 程序运行后,都能给出正确结果。这样是否就可认为程序是正确的呢? 如果软件中的问题没有被人们发现,那么,它究竟还算不算有问题呢?; 由于不能报告没有看见的软件缺陷,因此,就不 能说软件存在缺陷或软件不存在缺陷。只有看到了, 才能断言软件有缺陷。尚未发现的软件缺陷,只能说 可能存在未知的软件缺陷。 7.1.2 软件测试原则 (1)所有的测试都应追溯到用户需求 用户观点,最严重的错误是那些导致软件无法满 足需求的错误。 程序中的问题,其根源可能是在开发前期的各个 阶段所产生的。因此,解决、纠正错误也必须追溯到 前期工作。;测试与开发前期工作的关系;开发前期出现错误的扩展;软件生存期各阶段间需保持的正确性; (2) 概要设计时应完成测试计划 在进行概要设计时,就应完成测试计划,而测试 用例的详细定义,可在设计模型确定后开始。所有测 试都要在任何代码被产生之前,做好计划和设计。 软件测试不等于程序测试。软件测试应贯穿于软 件定义与开发的整个期间。据美国一家公司统计,查 出的软件错误中,属于需求分析和软件设计阶段的错 误约占 2/3,而属于编程阶段的错误仅占

文档评论(0)

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

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

1亿VIP精品文档

相关文档