面向对象测试-Read.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文档。上传文档
查看更多
软 件 工 程 第23章 面向对象测试 23.1 扩大测试的视角 23.2 测试OOA和OOD模型 23.2.1 OOA和OOD模型的正确性 23.2.2 OOA和OOD模型的一致性 23.3 面向对象的测试策略 23.3.1在OO语境中的单元测试 23.3.2在OO语境中的集成测试 23.3.3在OO语境中的确认测试 第23章 面向对象测试23.4 OO软件的测试案例设计23.5 在类级别可用的测试方法23.6 类间测试案例实际23.7 小结 23.1 扩大测试的死角 所有面向对象模型应该被测试,以保证在 模型的语法、语义和语用语境内的正确性 、完整性和一致性。 23.2 测试OOA和OOD模型 OOA和OOD模型的语法正确性基于符号的正确使用 来判断,而且每个模型被评审以保证正确的建模 约定被保持。其语义正确性必须基于模型对现实 世界问题域的符合度而判断。其一致性判断可通 过“考虑模型中实体间的关系。一个不一致的模 型在其中某一部分的表示不会在模型的其他部分 正确地反应”。评估一致性时,应检查每个类及 其和其他类的连接。CRC模型和对象-关系图可用 来支持该活动。 评估类模型的步骤如下: 再次考察CRC模型和对象-关系模型; 检查每个CRC索引卡片的描述以确定是否某委托的责任是协作者的定义的一部分; 反转该连接以保证每个被请求服务的协作者正在接收来自某合理源的请求; 使用在第3步检查的反转连接,确定是否其他的类可能被需要或是否责任合适地在类间分组; 确定是否广泛请求的责任可能被组合为单个的责任; 步骤1到5被迭代地应用到每个类,并贯穿OOA模型的每次演化。 23.3 面向对象测试策略? OO语境中的单元测试: 对OO软件的类测试等价于传统软件的单元测试,它关 注模块的算法细节和模块接口间流动的数据,它是由 封装在类中的操作和类的状态行为驱动的。 OO语境中的集成测试的两种策略: 基于线程的测试,集成响应系统的一个输入或事件所需的一组类,每个线程被个体地集成和测试; 基于使用的测试,通过测试几乎不使用服务器类的类(独立类)来开始系统的构造,独立类被测试后,一层类(依赖类)使用独立类被测试。 23.3 面向对象的测试策略 OO语境中的确认测试: OO软件的确认关注于用户可见的动作和用户可识别的 系统输出。传统的黑盒测试可用于驱动确认测试,测 试案例可从创建作为OOA的一部分的对象-行为模型和 事件流图导出。 23.4 OO软件的测试案例设计 对OO测试案例设计的整体方法: 每个测试案例应被唯一标识,并被显式地和将被测试的类相关联; 测试的目的应被陈述; 对每个测试应开发一组测试步骤,应包含: 将被测试的对象的一组特定状态; 将被作为测试的结果使用的一组消息和操作; 当对象被测试时可能产生的一组异常; 一组外部条件 将辅助理解或实现测试的补充信息。 23.4.3 基于故障的测试 基于故障的测试的目标是设计最有可能发现似乎可 能的故障的测试。其初步计划是从分析模型开始。 集成测试在消息连接中查找似乎可能的故障:非期 望的结果、错误的操作/消息使用、不正确的调用。 且必须检查操作(函数)的行为。集成测试适用于 属性以及操作,它试图在客户对象而不是服务器对 象中发现错误,即其关注点是确定是否错误存在于 调用代码中。 23.4.4 OO程序设计对测试的影响 OOP可能以几种方式对测试产生影响: 某些类型的故障变得不太“似乎可能”(不值得去测试)。 某些类型的故障变得更加“似乎可能”(值得进行测试)。 某些新的故障类型出现。 23.4.5 测试案例和类层次 23.4.6 基于场景的测试设计 基于场景的测试关心用户做什么,而不是产品做什么。它意味着捕获用户必须完成的任务,然后在测试时应用它们或它们的变体。它往往在单个测试中处理多个子系统。 23.4.7 测试表层结构和深层结构 表层结构指OO程序的外部可观察的结构。测试基于用户任务进行。深层结构指OO程序的内部技术细节。对其测试用以检查作为OO系统的子系统和对象设计的一部分被建立的依赖、行为和通信机制。分析和设计模型是其测试的基础。 对OO类的随机测试 在类级别的划分测试划分测试可以减少测试类所需的测试案例的数量, 输入和输出被分类,设计测试案例来处理每个类别。划 分类别的方法: 基于状态的划分:基于类操作改变类状态能力来对类操作分类; 基于属性的划分:基于它们使用的属性来对类操作分类; 基于类别的划分:基于各自完成的类属函数来对类操作分类。 23.6 类间测试案例设计 23.7 小结? * * 第23章 面向对象测试 23.4.1 OO概念的测试案例设计的含义 封装使得一些信息在某种程度上难于获得,继承也造成了对测试的障碍,多继承进一步使测试复杂化。 23.

文档评论(0)

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

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

1亿VIP精品文档

相关文档