【软件制造工程】测试工程.ppt

  1. 1、本文档共65页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 测试工程 软件测试背景 软件是人编的—所以不完美 实例: 1994-1995,迪斯尼的狮子王系统不支持问题 Intel的pentium处理器 1994年浮点除法缺陷 2000年8月28日, 1.13MHZ处理器一个可能导致运行程序被挂起的执行指令问题 1999年12月3日,美国航天局火星极地登陆飞船失踪 1991年爱国者导弹防御系统系统时钟错误积累造成跟踪系统失去精确度 千年虫,世界各地解决2000年错误超过数亿美元 软件测试背景 软件产品最大的成本是检测软件错误,修正软件错误的成本。 在整个软件开发中,测试工作量一般占30%~40%,甚至≥50%。在人命关天的软件(如飞机控制,核反应堆等)测试所花费的时间往往是其它软件工程活动时间之和的三到五倍 。 软件测试的基本原则 (1)尽早地、不断地进行软件测试。 (2)设计测试用例时,要给出测试的预期结果。 (3)开发小组和测试小组分开。 (4)要设计非法输入的测试用例。 软件测试的基本原则 (5)在对程序修改之后要进行回归测试。 (6)程序中尚未发现的错误的数量往往与在该段程序中已发现的错误的数量成正比。 测试观点 G.J.Myers 《软件测试技巧》 测试是为了寻找错误而运行程序的过程; 一个好的测试用例在于能发现至今未发现的错误; 一个成功的测试是发现了至今未发现的错误的测试。 测试观点 E.W.Dijkstra 测试能证明错误的存在,但不能证明错误不存在。 测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。 把证明程序无错当作测试目的不仅是不正确的, 完全做不到的,而且对做好测试没有任何益处,甚至是十分有害的。 能够发现错误的测试是成功的测试,否则是失败的测试。 测试观点 软件测试不等于程序测试 软件测试应贯穿于软件定义与开发的整个期间; 据美国一家公司统计,查出的软件错误中,属于需求分析和软件设计的错误约占 64%,属于程序编写的错误仅占 36%。程序编写的许多错误是“先天的”。 4.1 测试工程概要 通过测试工程对软件的测试,验证软件的有效性,发现并修补软件系统的缺陷,以提高软件质量,确保开发出用户满意的软件。 4.1 测试工程概要 测试是一个反复的过程 面向功能的系统和面向对象的系统的测试方法是不一样的 4.1 测试工程概要 测试工程在软件生命周期过程中处于下流工程的位置 测试工程的主要测试阶段:单元测试、组合测试、系统测试、运行测试。 开发工程与测试阶段 开发工程与测试阶段 开发工程与测试阶段 开发工程与测试阶段 开发工程与测试阶段 4.2 各个测试阶段的作业内容及流程 单元测试 前提:已通过编译程序检查并且改正所有语法错误。 依据:程序设计书 目的:检测确认程序模块的处理逻辑是否正确,要求的功能是否实现。 4.2 各个测试阶段的作业内容及流程 4.2 各个测试阶段的作业内容及流程 从哪几个方面进行单元测试? (1)程序的逻辑处理测试 (2)程序的输入/输出测试 (3)边界条件测试 (4)异常处理测试 4.2 各个测试阶段的作业内容及流程 组合测试 目的:将各个程序模块组装起来进行程序之间的连接测试,确认系统的各个功能模块及模块之间的接口是否正确,是否实现详细设计书的功能要求,详细设计是否符合业务处理的要求。 注:组合测试不仅找出程序缺陷, 同时还要找出设计缺陷。 4.2 各个测试阶段的作业内容及流程 组合测试作业内容及流程 4.2 各个测试阶段的作业内容及流程 组合测试验证哪几方面的内容? (1)数据的输入、窗体之间的迁移、表格的打印输出是否正确。 (2)文件、数据库的处理是否合理、正确。 (3)功能模块之间的信息、数据的传递、通信接口的处理等是否正确。 4.2 各个测试阶段的作业内容及流程 (4)功能模块之间接口发生的异常处理是否正确,如与外部设备的接口、嵌入软件等的接口发生异常时的处理。 4.2 各个测试阶段的作业内容及流程 系统测试 目的:验证软件系统的功能和性能及其他特性是否与用户期待的要求一致。(即验证软件的可靠性和有效性。) 依据:需求定义和概要设计书 4.2 各个测试阶段的作业内容及流程 系统测试作业内容及流程 4.2 各个测试阶段的作业内容及流程 运行测试 (又称应用测试或验收测试) 目的:由用户确定软件系统是否满足需求定义的要求。 4.2 各个测试阶段的作业内容及流程 运行测试的主要作业内容及流程 4.3 测试方法 4.3 测试方法 从测试的手段分类,常用的测试方法有白盒测试和黑盒测试; 从测试的推进方法分类,又有自顶向下测试和自底向上测试。 4.3 测试方法 注: 选用少量最有效的测试数据,达到尽可能完备的测试效果是设计测试

您可能关注的文档

文档评论(0)

精品资料 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档