第七讲软件测试技术解析.ppt

  1. 1、本文档共144页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试技术 GIS软件测试技术 第七讲 软件测试技术-内容提要 软件测试概论 软件测试法则 软件测试方法 软件测试范例 软件测试组织 概论-软件质量与缺陷 软件产品既必需满足用户的功能要求,又必须稳定可靠地完成用户的作业。 软件质量体现在多个方面,但首先要面对并必须解决的方面是软件缺陷。 软件缺陷有可能会给系统质量尤其是可靠性带来重大影响。 概论-现状 我们无法提供无缺陷的软件 各种研究报告表明,每写1000行代码会产生 30到85个缺陷 大多数缺陷可通过测试捕获 在大量的已完成测试的软件中,每1000行代码仍存在0.5—3缺陷 概论-软件缺陷例1 错误或含糊的规格说明 不适当的设计 需求: “阻止鱼雷攻击发射它的潜艇 “ (198?) 设计: 鱼雷发射后在发生180度转向时自毁。 概论-软件缺陷例2 事件 1999年; 火星气象卫星(Mars Climate Orbiter)到达火星之后不久就消失; 火星极地登陆者(Mars Polar Lander)在火星上着陆时坠毁。 原因 地面系统软件和飞行器上软件分别使用公制和英制两种单位。 教训 没有进行充分的测试; 发现异常时,没有被恰当的解释。 概论-软件缺陷例3 事件 1996年6月4日,Ariane 5 发射40秒后爆炸。 原因 将一个64位浮点值转换为16位有符号整数值时,超出了16位整数的表示范围,而这个异常未得到正确解决。 教训 对于重用模块,作了 Ariane 5和Ariane 4 具有相同环境的假设; 错误处理模块的处理机制不正确; 重用模块在新的环境下完全没有进行测试。 概论-软件缺陷的属性 概论-获得高质量软件 概论-缺陷过滤 概论-定义 国家标准GB/T 11457—1995软件工程术语: 由人工或自动方法来执行或评价系统或系统部件的过程,以验证它是否满足规定的需求;或识别出期望的结果和实际结果之间有无差别。 IEEE/ANSI: 使用为发现错误所选择的输入和状态的组合而执行代码的过程。 概论-目标 在给定的时限内尽可能多的发现缺陷和隐患 证实给定的软件产品满足其需求规格说明 用最低的成本和投入确认软件测试的质量 建立高质量的测试用例,完成有效地测试,提交有用的问题报告 为软件开发过程的改进提供数据支持 概论-验证与确认 验证与确认是广泛认可的质量保证方法和手段 软件测试是软件验证与确认的重要组成部分 验证是指对某项规定活动进行检查的过程,以确保该活动实现了规定功能。 确认是指审查已建立的软件产品是否符合客户需要的过程。 概论-测试与调试 测试不是调试,调试也不是测试。 主要区别: 测试是一种检验,调试是推理过程。 测试从已知条件开始,使用预先定义的规程并且有可预知的结果;调试的开始条件可能是不可知的,结果不可预见。 测试经常由非程序设计人员完成,调试必须由程序设计者完成。 概论-神话 可以对程序进行彻底的测试 只要测试人员尽力做好工作,就可以发现所有程序错误 可以通过尝试程序所有可能的输入和状态对程序进行测试 好的测试包必须包含大量的测试用例 好的测试用例总是复杂难懂的 软件测试自动化可以替代测试工程师, 很好的完成软件测试 软件测试简单又容易,任何人都可以做, 不需要培训 概论-局限性 技术 不可能通过测试获得100%的质量信心 无法确信可以达到100%足够的软件测试 不存在发现全部缺陷的单项技术,一种测试技术在发现特定类型的缺陷方面最有效率 工程 无法确信规格说明100%正确 无法确信测试系统(或环境)的正确性 无法确信测试人员完全理解了软件产品 没有能够适用于所有软件的测试工具 没有足够的资源彻底完成软件测试 概论-正确理解测试 有效的测试对于开发可靠、安全和成功的软件是必须的。 测试具有有效范围,它不是其他软件工程方法的替代品。 概论-测试投入 适量的测试投入取得最佳的测试效果 风险管理 影响测试投入的因素 系统的目的 潜在的用户数量 信息的价值 开发机构的成熟度 概论-测试投入(HP) 概论-测试投入(IBM) 一般项目:项目总投入的30%~40% 高可靠性和高安全性项目:项目其它投入的3~5倍 概论-回顾 软件质量与缺陷的关系 导致软件致命缺陷的原因往往很简单 软件测试的定义、目标和作用 有关软件测试的一些神话 软件测试的局限性 应正确的理解软件测试 软件测试的投入视具体情况而定 法则-无止境 除了最简单的程序,任何程序的完全测试都是不可能的。 测试可以表明缺陷的存在,但绝不能证明没有缺陷。 测试只能使好的设计变得更好 “You can’t test in quality. If it’s not there before you begin testing, it won’t be there when y

文档评论(0)

挑战不可能 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档