软件测试的背景.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) 迪斯尼的狮子王:1994-1995 94年秋,迪斯尼公司发布了面向儿童的游戏“Lion King Animated Storybook”,进行了大量的宣传和促销,销售额可观。12月26日,开始收到大量投诉:游戏无法正常运行,舆论哗然。 原因:没有对市场上的各种PC机型进行测试,该软件只能在少数系统中正常工作,但在大众常用的系统中不行。 软件失败 描述软件问题的术语: 错误(error, mistake, bug ) 缺陷(fault, defect) 过错缺陷和遗漏缺陷 失效(failure) 事故(incident) 软件缺陷的定义 产品说明书:是软件开发小组的一个协定。它对开发的产品进行定义,给出产品的细节、如何做、做什么、不能做什么。 至少满足以下5个规则之一才称为软件缺陷: 软件未实现产品说明书要求的功能。 软件出现了产品说明书指明不应出现的错误。 软件实现了产品说明书未提到的功能。 软件未实现产品说明书虽未明确提及但应该实现的目标。 软件难以理解、不易使用、运行缓慢或者从测试员的角度看最终用户会认为不好。 软件错误的分类 软件需求错误(需求不正确,不完全,文档有误等) 功能和性能错误(遗漏功能、规定了一些冗余的功能、异常处理有误等) 软件系统结构错误(系统整体构架有误) 软件结构错误(程序控制顺序有误,处理过程有误) 数据错误(数据定义或者数据结构有错,数据存取或者操作有误,例如:动态数据和静态数据混淆) 软件实现和编码错误(违背编码标准,例如:局部变量和全局变量混淆) 软件集成错误(接口有误) 测试定义与测试执行错误(例如:测试计划不完整,测试用例不充分) 导致错误的根源 缺乏有效的沟通 软件复杂度 编程错误 不断变更的需求 时间的压力 人员的自大 软件开发工具 缺乏文档的代码 问题: 以上案例都说明了软件测试在软件整个生命周期中起着至关重要的作用,那么什么是软件测试,我们如何定位软件测试呢? 软件测试的定义与定位 IEEE的定义(1983) 使用人工或者自动手段来运行或测定整个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。 测试(test) 软件测试就是一个过程或一系列过程 ,用来确认计算机代码完成了其应该完成的功能,不执行其不该有的操作。 测试的目标是:发现错误 软件测试的定义与定位(分析) 把软件测试(包括其它任何测试)定位在证明软件的正确性上是不对的,软件测试的目标是:查找软件的错误.原因 : 证明软件正确性的目标不可达:测试是无法证明软件的正确性的,原因是我们无法对软件进行理想测试(在理想情况下:对程序的所有可能执行情况进行测试),如完全的白盒测试(设计若干测试用例,使得软件中所有的执行路径都被执行到,见图1)或黑盒测试(设计若干测试用例,穷举所有软件可能的输入,见图2),这都要花费我们不能承受的成本(时间,人力),退一步讲,就算我们能对软件实施完全的白盒测试与黑盒测试,我们也无法保证软件在需求获取或是设计上没有失误,更何况我们还要考虑到非法和无效输入的问题。 软件测试的定义与定位(分析-CONT) 软件测试的定义与定位(分析-CONT) 软件测试的定义与定位(分析-CONT) 从心理学角度讲,与软件测试的最终目标不一致。我们进行软件测试的最终目标是想为软件增加一些价值,既提高了软件的可靠性和质量(与软件工程的目标一致),换句话说也就是找到了软件的错误并最终修复了它。从心理学的角度讲,测试人员将目标确立为证明程序中存在错误(而不是证明软件中不存在错误), 将更利于为软件增加更多的价值。 软件测试的特点 完全测试程序是不可能的 软件测试是有风险的行为 测试很难显示潜伏的软件缺陷 找到的软件缺陷越多,就说明软件缺陷越多 杀虫剂现象:软件测试越多,免疫力越强 并非所有软件缺陷都能修复 没有足够的时间、修复的风险、不值得修复 难以说清的软件缺陷 产品说明书不断变化,没有最终版本 软件测试员在产品小组中不受欢迎 早点找出缺陷、控制情绪、不要总是报告坏消息 软件测试是一项讲究条理的技术工作 软件测试员的目标 软件测试员的目标是发现软件缺陷。 软件测试员的目标是尽可能早地找出软件缺陷。 随着时间的推移,修复软件缺陷的费用将迅速增长 软件测试员的目标是尽可能早地找出软件缺陷,并确保其得以修复。 软件测试员应具备的素质 他们是群探索者 他们是故障排除员 他们不放过任何蛛丝马迹 他们具有创造性 他们是群追求完美者 他们判断准确 他们注重策略和外交 他

文档评论(0)

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

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

1亿VIP精品文档

相关文档