第9章 面向对象软件测试.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
9.2 类测试 构建测试用例:要对类进行测试,就必须先确定和构建类 的测试用例。类的描述方法有 OCL, 自然语言,和状态图 等方法,可以根据类说明的描述方法构件类的测试用例。 根据类说明(用 OCL 表示)确定测试用例 根据类的状态转换图来构建类的测试用例 9.2 类测试 根据类的说明确定测试用例 用 OCL 表示的类的说明中描述了类的每一个限定条件条件。 在 OCL 条件下分析每个逻辑关系,从而得到由这个条件的结 构所对应的测试用例。这种确定类的测试用例的方法叫做根 据前置条件和后置条件构建测试用例。其总体思想是:为所 有可能出现的组合情况确定测试用例需求。在这些可能出现 的组合情况下,可满足前置条件,也能够到达后置条件。根 据这些需求,创建测试用例;创建拥有特定输入值(常见值 和特殊值)的测试用例;确定它们的正确输出 —— 预期输出 值。 9.2 类测试 例如 A 、 B 、 C 代表用 OCL 表示的组件,前置条件和后置 条件列表如下(下页): 9.2 类测试 9.2 类测试 9.2 类测试 根据前置条件和后置条件创建测试用例的基本步骤如下: 1 . 确定在表 1 中与前置条件形成相匹配的各个项目 所指定的一系列前置条件的影响。 2 . 确定在表 2 中与后置条件形成相匹配的各个项目 所指定的一系列前置条件的影响。 3 . 根据影响到列表中各个项目的所有可能的组合情 况从而构造测试用例需求。一种简单的方法就是:用 第一个列表中的每一个输入约束来代替第二个列表中 每一个前置条件。 4 . 排除表中生成的所有无意义的条件。 9.2 类测试 根据状态转换图构建测试用例 状态转换图以图例的形式说明了与一个类的实例相关联的行为。 状态转换图可用来补充编写的类说明或者构成完整的类说明。状 态图中的每一个转换都描述了一个或多个测试用例需求。因而, 可以通过在转换的每一端选择有代表性的值和边界来满足这些需 求。如果转换是受保护的,那么也应该为这些保护条件选择边界。 状态的边界值取决于状态相关属性值的范围,可以根据属性值来 定义每一个状态。 9.2 类测试 两种构建测试用例方法的比较 和根据前置条件和后置条件创建类的测试用例相比, 根据状态转换图创建类的测试用例有非常大的优势。 在类的状态图中,类相关联的行为非常的明显和直观, 测试用例的需求直接来自于状态转换,因而很容易确 定测试用例的需求。 不过基于状态图的方法也有其不利的方面。如要完全 理解怎样根据属性值来定义状态;事件是如何在一个 给定的状态内影响特定值等。这都很难仅从简单的状 态图中确定。因此,在使用基于状态转换图进行测试 时,务必在生成的测试用例时检查每个状态转换的边 界值和预期值。 第 9 章 面向对象软件测试 9.1 面向对象测试的问题 9.2 类测试 9.3 面向对象的集成测试 9.4 GUI 测试 9.5 面向对象的系统测试 9.3 面向对象的集成测试 面向对象设计( OOD )采用 造型的观点 ,以 OOA 为基 础归纳出类,并建立类结构或进一步构造成类库,实现分 析结果对问题空间的抽象。 OOD 归纳的类,可以是对象 简单的延续,可以是不同对象的相同或相似的服务。由此 可见, OOD 不是在 OOA 上的另一思维方式的大动干戈, 而是 OOA 的进一步细化和更高层的抽象。 9.3 面向对象的集成测试 , OOD 与 OOA 的界限通常是难以严格区分的。 OOD 确定类和类结构不仅是满足当前需求分析的 要求,更重要的是通过重新组合或加以适当的补 充,能方便实现功能的重用和扩增,以不断适应 用户的要求。因此,对 OOD 的测试,针对功能的 实现和重用以及对 OOA 结果的拓展,从如下三方 面考虑: ☆ 对认定的类的测试 ☆ 对构造的类层次结构的测试 ☆ 对类库的支持的测试 9.3 面向对象的集成测试 1 对认定的类的测试 OOD 认定的类可以是 OOA 中认定的对象,也 可以是对象所需要的服务的抽象,对象所具有的 属性的抽象。认定的类原则上应该尽量基础性, 这样才便于维护和重用。测试认定的类: 1.1 是否含盖了 OOA 中所有认定的对象。 1.2 是否能体现 OOA 中定义的属性。 1.3 是否能实现 OOA 中定义的服务。 1.4 是否对应着一个含义明确的数据抽象。 1.5 是否尽可能少的依赖其他类。 1.6 类中的方法( C++ :类的成员函数)是否 单用途。 9.3 面向对象的集成测试 2 对构造的类层次结构的测试 为能充分发挥面向对象的继承共享特性, OOD 的类 层次结构,通常基于 OOA 中产生的分类结构的原则来组 织,着重体现父类和子类间一般性和特殊性。两者概念上 的差异。在当前的问题空间,对类层次结

文档评论(0)

wq1987 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档