软件测试面向对象测试技术课件.ppt

  1. 1、本文档共59页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
举例 基于属性划分就是根据它们所使用的属性进行划分。 对于类Account,属性balance和creaditLimit用于定义划分。 操作可分为三类(1)使用creditLimit的操作;(2)修改creditLimit的操作;(3)既不使用也不修改creditLimit的操作。然后为每个划分设计测试用例。 基于类别的划分就是根据每个操作所完成一般功能进行划分类操作。 例如Account类操作可以划分初始化操作——open()、setup(),计算操作——deposit()、withdraw(),查询操作——balance()、summarize()、creadLimit()及关闭操作close()。 .. 七 、面向对象的集成测试 对于面向对象程序,相互调用的功能是散布在程序的不同类中,类通过消息相互作用申请和提供服务。 把一组相互有影响的类看作一个整体称为类簇。 类簇的测试主要依据系统中相关类的层次关系,检查类之间相互作用的正确性,即检查各相关类之间消息连接的合法性、子类的继承性与父类的一致性、动态绑定执行的正确性、类簇协同完成系统功能的正确性等。 面向对象的集成测试能够检测出相对独立的单元测试无法检测出的那些类相互作用时才会产生的错误。 .. 基于单元测试对成员函数行为正确性的保证,集成测试只关注于系统的结构和内部的相互作用。 面向对象的集成测试可以分成两步进行:先进行静态测试,再进行动态测试。 七 、面向对象的集成测试 .. 静态测试主要针对程序的结构进行,检测程序结构是否符合设计要求。 现在流行的一些测试软件都能提供一种称为“可逆性工程”的功能,即通过原程序得到类关系图和函数功能调用关系图。 通过“可逆性工程”得到的结果与OOD的结果相互比较,检测程序结构和实现上是否有缺陷,通过这种方法检测OOP是否达到了OOD的要求。 .. 动态测试设计测试用例时,通常需要功能调用结构图、类关系图或者实体关系图为参考,确定不需要被重复测试的部分,从而优化测试用例,减少测试工作量,使得进行的测试能够达到一定覆盖标准。 测试所要达到的覆盖标准: 达到类所有的服务要求或服务提供的一定覆盖率; 依据类间传递的消息,达到对所有执行线程的一定覆盖率; 达到类的所有状态的一定覆盖率等。 同时也可以考虑使用现有的一些测试工具 来得到程序代码执行的覆盖率。 .. 面向对象集成测试的测试策略 其测试有两种不同策略: 基于类间协作关系的横向测试 基于类间继承关系的纵向测试。 .. 1、基于类间协作关系的横向测试 由系统的一个输入事件为起点,对其触发的一组类进行测试,执行相应的操作/消息处理路径,最后终止于某一输出事件。 应用回归测试对以测试过的类集再重新执行一次,以保证加入新类时不会产生意外的结果 .. 一、面向对象测试概述 我们生活在一个对象的世界里,每个对象有一定的属性,把属性相同的对象进行归纳就形成类 例如:家具就可以看作类, 其主要的属性有价格、尺寸、重量、位置和颜色等 无论我们谈论桌子、椅子还是沙发、衣橱,这些属性总是可用的,因为它们都是家具而继承了为类定义的所有属性。 除了属性之外,每个对象可以被一系列不同的方式操纵,它可以被买卖、移动、修改(如漆上不同的颜色)。 这些操作或方法将改变对象的一个或多个属性。 类的合法操作可以和对象的定义联系在一起,并且被类的所有实例继承。 .. 一、面向对象测试概述 面向对象特征 (1)对象唯一性 (2)分类性 (3)继承性 (4)多态性 .. 一、面向对象测试概述 面向对象要素 (1)抽象 (2)封装 (3)共享 .. 面向对象软件开发方法与传统的软件开发方法的区别: (1)调查、分析系统需求,建立一个全面、合理、统一的模型。 (2)对象设计。 (3)程序实现。 .. 面向对象软件开发过程 面向对象的开发模型突破了传统的瀑布模型,将开发分为面向对象分析(OOA),面向对象设计(OOD),和面向对象编程(OOP)三个阶段。 针对这种开发模型,结合传统的测试步骤的划分,我们把面向对象的软件测试分为: 面向对象分析的测试,面向对象设计的测试,面向对象编程的测试; 面向对象单元测试,面向对象集成测试,面向对象系统测试。 .. 面向对象测试 在传统的面向过程程序中,对于函数 y=Function(x); 只需要考虑一个函数(Function())的行为特点,在面向对象程序中,你不得不同时考虑基类函数(Base::Function())的行为和继承类函数(Derived::Function())的行为。

文档评论(0)

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

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

1亿VIP精品文档

相关文档