第五章 软件测试工程.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文档。上传文档
查看更多
第五章 软件测试工程 概述 软件开发过程必须伴有质量保证活动。 软件测试是软件质量保证的关键元素,代表了规约、设计和编码的最终检查。 软件产品最大的成本是检测软 件错误、修正软件错误的成本。 在整个软件开发中,测试工作量 一般占30%~40%,甚至≥50%。 在人命关天的软件(如飞机控制、核反应堆等)测试所花费的时间往往是其它软件工程活动时间之和的三到五倍 软件测试是为了发现错误而执行程序的过程,或者说,软件测试是根据软件的规格说明(例如软件的功能、性能、运行环境等要求)以及程序内部结构而设计一批测试用例,并利用这些测试用例去运行程序,以发现软件错误的过程。 测试用例是为了测试软件而设计的一组数据,它应该包括输入的数据和预期输出的结果两部分。 测试用例={输入数据+预期结果} 软件测试背景 软件是人编的—所以不完美 实例: Intel的pentium处理器 1994年浮点除法缺陷 2000年8月28日,1.13MHZ处理器一个可能导致运行程序被挂起的执行指令问题 1999年12月3日,美国航天局火星极地登陆飞船失踪 1991年爱国者导弹防御系统系统时钟错误积累造成跟踪系统失去精确度 千年虫:世界各地解决2000年错误超过数亿美元 质量管理领域权威人物J.M.Juran将质量定义为“决定产品性能和‘满意程度’的特征”, 测试注重于产品的满意度。 测试应针对这样一种情况:软件产品在一些特定的范围内不能满足客户的合理要求。 通过测试过程可以评定质量风险(可能的错误),了解被测试系统中存在的错误模式(观察到的错误症状)。 软件测试是一个查找错误的过程,所以软件测试只能证明错误的存在,而不是证明程序无错,不能保证经过测试的程序一定没有错误。 软件测试仅仅是一个手段,根本的目的是为了纠错,即纠正软件中的错误,从而提高软件的质量。 测试不可能发现所有错误,只能在有限的时间和经济条件下,尽可能地发现错误。 质量控制技术 测试的目的与地位 G.J.Myers在《软件测试技巧》中认为: 1.测试是为了寻找错误而运行程序的过程。 2.一个好的测试用例是指很可能找到迄今为止尚未发现的错误的测试。 3.一个成功的测试是揭示了迄今为止尚未发现的错误的测试。 E.W.Dijkstra 指出: “程序测试能证明错误的存在,但不能证明错误不存在。” 测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。 难以说清的软件缺陷 古谚: “一片树叶飘落在森林中没有人听见,谁能说它发出了声音?” 测试原则 (1)所有的测试都应追溯到用户需求 最严重的错误(从用户角度)是那些导致软件无法满足需求的错误。 程序中的问题根源可能出现在开发前期的各阶段,纠正错误也必须追溯到前期工作。 测试与开发前期工作的关系 软件生存期各阶段间需保持的正确性 测试原则 (2)应该尽早制定测试计划。 概要设计时应完成测试计划,详细的测试用例定义可在设计模型确定后开始,所有测试可在任何代码被产生之前进行计划和设计。 测试原则 (3)应该由第三方进行测试工作。 一个软件项目的开发人员不应该同时是该软件的测试人员,基于心理因素,人们往往不愿意否定自己的工作。 测试原则 (4)穷举测试是不可能的。 测试的最高目标是指发现错误的可能性最高的测试,所以,测试的关键技术是设计一组高产的测试用例,好的测试方案是尽可能发现至今为止仍未发现的错误。从某种意义上说,测试是否成功,取决测试用例的选择。 测试原则 (5)充分注意到错误的群集现象 经验表明,测试发现的错误中有80%的错误很可能是由20%的程序模块造成的,这是一种错误群集性现象。也就是说,在程序段中,发现错误数目多的地方,则残存错误的数目也比较多,这一现象已为许多程序测试实践所证明。 测试原则 (6)测试应该从“小规模”到“大规模” 通常,最初的测试重点往往是放在单个的程序模块中,然后,进一步的测试重点放在集成的模块族,最后是对整个系统进行测试。随着测试的逐步深入展开,要集中测试容易出错的地方。 软件配置:需求规格说明、设计说明书、源程序等。软件配置中还应包含测试配置。 测试工具:为软件测试提供的某种服务程序。 评价:测试结果与期望结果比较,如果有差异则往往程序有错,需要改正。 可靠性预测有3种情况可以考虑: A.如果测试发现严重错误,则软件的质量和可靠性一定不高; B.如果测试结果是软件功能完成正常,发现的问题不是严重错误,也容易修改,则可能:(1)软件质量和可靠性可以接受;(2)所进行的测试还不足以发现严重错误,错误被潜伏下来。 C.测试没有发现任何错误,则极有可能是测试配置

文档评论(0)

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

本账号下所有文档分享可拿50%收益 欢迎分享

1亿VIP精品文档

相关文档