信息系统分析与设计__第9章.jsp.pptVIP

  1. 1、本文档共134页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
教学内容 系统测试的意义、目的和基本原则;系统测试的方法和过程;系统测试的步骤;系统测试方案的设计;系统调试;系统的可靠性分析。 教学要求 熟练掌握:系统测试的基本原则;系统测试的步骤包括单元 测试、集成测试、确认测试和系统测试的相关知识;系统测 试方案的设计包括白盒(重点在逻辑覆盖和基本路径法)和 黑盒(重点在等价类、边界值法和错误推测法)测试方法; 学会综合使用各种测试技术。 一般掌握:系统测试的意义、目的;系统测试的方法和过 程;系统调试的相关内容。 了解:因果图测试方法、系统的可靠性分析。 软件测试背景 软件是人编的——所以不完美 实例: 1991年爱国者导弹防御系统系统时钟累积错误 1994,英特尔奔腾浮点除法软件缺陷 1994-1995,迪斯尼的狮子王系统不支持问题 1999年12月3日,美国航天局火星极地登陆飞船失踪 千年虫,世界各地解决2000年错误超过数亿美元 软件生存期各阶段间需保持的正确性 9.1 系统测试的基本概念 9.1.1 系统测试的定义 软件测试是为了发现错误而执行程序的过程; 软件测试是根据软件开发个阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例去运行程序,以发现程序错误的过程; 系统测试在系统生命周期中横跨了两个阶段 9.1.2 系统测试的作用和意义 系统测试在软件生命周期占据重要地位和工作量。 9.1.3 系统测试的目的 软件测试的目的 基于不同的立场,存在着两种完全不同的测试目的。 从用户的角度出发,普遍希望通过软件测试暴露 软件中隐藏的错误和缺陷,以考虑是否可接受该 产品。 从软件开发者的角度出发,则希望测试成为表明 软件产品中不存在错误的过程,验证该软件已正 确地实现了用户的要求,确立人们对软件质量的 信心。 测试的目的与地位 G.J.Myers 在软件测试技巧中认为: 1.测试是为了寻找错误而运行程序的过程。 2.一个好的测试用例是指很可能找到迄今为止尚未 发现的错误的测试。 3.一个成功的测试是揭示了迄今为止尚未发现的错误 的测试。 E.W.Dijkstra 指出: “程序测试能证明错误的存在,但不能证明错误不存在” ※ 软件测试的目的与任务 测试的目的:发现程序的错误; 任务:通过在计算机上执行程序,暴露程序中潜在的错误。 纠错的目的:定位和纠正错误; 任务:消除软件故障,保证程序的可靠运行。 9.1.4 系统测试的基本原则 (1) “尽早地和不断地进行系统测试” 。 (2)程序员或程序设计机构应避免测试自己的程序。 (3)测试用例应由输入和预期的输出结果两部分组成 (4)测试用例的设计不仅要有合法的输入数据,还要有非法的输入数据。 (5)要充分注意测试过程中的群集现象。Pareto原则,即测试发现的错误中80%很可能起源于20%的模块 (6)严格执行测试计划,排除测试的随意性。 (7)应当对每一个测试结果做全面检查。经验表明,测试后程序中残存的错误数目与该程序中已发现的错误数目成正比 (8)除了检查程序是否做完了它应做的事之外,还要检查它是否做了不应该做的事。 (9)在对程序修改之后要进行回归测试。 (10)妥善保留测试计划、全部测试用例、出错统计和最终分析报告,并把它们作为系统的组成部分之一,为维护提供方便。 1.静态测试 1)人工测试:人工测试是指不依靠计算机而靠人工审查程序或评审软件的测试方法。具体有下列三种方式: (1)个人复查 (2)走查 (3)会审 2) 计算机辅助静态分析:这种方法是指利用静态分析工具对被测试程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。 2. 动态测试 动态测试指通过运行程序发现错误,一般意义上的测试大多是指动态测试。通常测试任何产品有两种方法:一是测试产品内部结构及处理过程;二是测试产品的功能。对软件产品进行动态测试时,也用这两种方法,分别称为白盒测试法和黑盒测试法。 1)白盒测试法 该方法把测试对象看作一个打开的盒子, 测试人员须了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。因此白盒测试又称为结构测试或逻辑驱动测试。 2)黑盒测试法 该方法把被测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在系统的接口处进行测试,依据需求说明书,检查程序是否满足功能要求。因此,黑盒测试又称为功能测试或数据驱动测试。 无论采用白盒测试还是黑盒测试,只要对每一种可能的输入情况都进行测试,就可以得到完全正确的程序,这种包括所有可能输入情

文档评论(0)

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

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

1亿VIP精品文档

相关文档