7.软件工程 实现2上.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文档。上传文档
查看更多
实现—软件测试部分 实现 7.1 编码 7.2 软件测试基础 7.3 单元测试 7.4 集成测试 7.5 确认测试 7.6 白盒测试技术 7.7 黑盒测试技术 7.8 调试 7.9 软件可靠性 7.10 小结 7.2 软件测试基础 表面看来,软件测试的目的与软件工程所有其他阶段的目的都相反。 软件工程的其他阶段都是“建设性”的:软件工程师力图从抽象的概念出发,逐步设计出具体的软件系统,直到用一种适当的程序设计语言写出可以执行的程序代码。但是,在测试阶段测试人员努力设计出一系列测试方案,目的却是为了“破坏”已经建造好的软件系统——竭力证明程序中有错误不能按照预定要求正确工作。 7.2.1 软件测试的目标 G.Myers给出了关于测试的一些规则,这些规则也可以看作是测试的目标或定义。 (1) 测试是为了发现程序中的错误而执行程序的过程; (2) 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案; (3) 成功的测试是发现了至今为止尚未发现的错误的测试。 7.2.2 软件测试准则 为了能设计出有效的测试方案,软件工程师必须深入理解并正确运用指导软件测试的基本准则。下面讲述主要的测试准则。 (1) 所有测试都应该能追溯到用户需求。 (2) 应该远在测试开始之前就制定出测试计划。 (3) 把Pareto原理应用到软件测试中。Pareto原理说明,测试发现的错误中的80%很可能是由程序中20%的模块造成的。 (4) 应该从“小规模”测试开始,并逐步进行“大规模”测试。 (5) 穷举测试是不可能的。 (6) 为了达到最佳的测试效果,应该由独立的第三方从事测试工作。 7.2.3 测试方法 测试任何产品都有两种方法: 如果已经知道了产品应该具有的功能,可以通过测试来检验是否每个功能都能正常使用;如果知道产品的内部工作过程,可以通过测试来检验产品内部动作是否按照规格说明书的规定正常进行。 前一种方法称为黑盒测试,后一种方法称为白盒测试,另外还有穷尽测试等。 黑盒测试法 黑盒测试法把程序看作一个黑盒子,完全不考虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。黑盒测试又称为功能测试。 白盒测试法 白盒测试法与黑盒测试法相反,它的前提是可以把程序看成装在一个透明的白盒子里,测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按预定要求正确工作。白盒测试又称为结构测试。 穷尽测试 包含所有可能情况的测试称为穷尽测试 对于实际程序而言,穷尽测试通常是不可能做到的 黑盒法为了做到穷尽测试,至少必须对所有输入数据的各种可能值的排列组合都进行测试 白盒法为了做到穷尽测试,程序中每条可能的通路至少都应该执行一次 (严格地说,每条通路都应该在每种可能的输入数据下执行一次) 因为不可能进行穷尽测试,所以软件测试不可能发现程序中的所有错误 软件测试与 软件开发各阶段的关系 7.2.4 测试步骤 除非是测试一个小程序,否则一开始就把整个系统作为一个单独的实体来测试是不现实的。根据第4条测试准则,测试过程也必须分步骤进行,后一个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由许多模块组成,因此,大型软件系统的测试过程基本上由下述几个步骤组成。 模块测试 子系统测试 系统测试 验收测试 平行运行 7.2.5 测试阶段的信息流 图7.1描绘了测试阶段的信息流,这个阶段的输入信息有两类: (1)软件配置,包括需求说明书、设计说明书和源程序清单等; (2)测试配置,包括测试计划和测试方案。。 测试方案 所谓测试方案不仅仅是测试时使用的输入数据(称为测试用例),还应该包括每组输入数据预定要检验的功能,以及每组输入数据预期应该得到的正确输出。实际上测试配置是软件配置的一个子集,最终交出的软件配置应该包括上述测试配置以及测试的实际结果和调试的记录 图7.1 测试阶段的信息流 7.3 单元测试 单元测试集中检测软件设计的最小单元——模块。 单元测试和编码属于软件过程的同一个阶段。在编写出源程序代码并通过了编译程序的语法检查之后,就可以用详细设计描述作指南,对重要的执行通路进行测试,以便发现模块内部的错误。 可以应用人工测试和计算机测试这样两种不同类型的测试方法,完成单元测试工作。 通常,单元测试主要使用白盒测试技术,而且对多个模块的测试可以并行地进行。 7.3.1 测试重点 在单元测试期间着重从下述5个方面对模块进行测试 模块接口 局部数据结构 重要的执行通路 出错处理通路

文档评论(0)

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

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

1亿VIP精品文档

相关文档