欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    面向对象测试技术PPT.ppt

    • 资源ID:98015876       资源大小:1.26MB        全文页数:85页
    • 资源格式: PPT        下载积分:6金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要6金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    面向对象测试技术PPT.ppt

    第四章第四章 面向对象测试技术面向对象测试技术1 一、面向对象测试概述一、面向对象测试概述1.传统的软件开发存在的问题传统的软件开发存在的问题(1)软件重用性差)软件重用性差(2)软件可维护性差)软件可维护性差(3)开发出的软件不易满足用户需求)开发出的软件不易满足用户需求2一、面向对象测试概述一、面向对象测试概述2、面向对象技术、面向对象技术基本概念基本概念(1)对象)对象(2)对象的状态和行为)对象的状态和行为(3)类)类(4)类的结构(类间关系)类的结构(类间关系)(5)消息和方法)消息和方法3一、面向对象测试概述一、面向对象测试概述面向对象特征面向对象特征(1)对象唯一性)对象唯一性(2)分类性)分类性(3)继承性)继承性(4)多态性)多态性4一、面向对象测试概述一、面向对象测试概述面向对象要素面向对象要素(1)抽象)抽象(2)封装)封装(3)共享)共享5 面向对象软件开发方法与传统的软件面向对象软件开发方法与传统的软件开发方法的区别:开发方法的区别:(1)调查、分析系统需求,建立一个全面、)调查、分析系统需求,建立一个全面、合理、统一的模型。合理、统一的模型。(2)对象设计。)对象设计。(3)程序实现。)程序实现。6面向对象软件开发过程面向对象软件开发过程 面向对象的开发模型突破了传统的瀑布模型,面向对象的开发模型突破了传统的瀑布模型,面向对象的开发模型突破了传统的瀑布模型,面向对象的开发模型突破了传统的瀑布模型,将开发分为面向对象分析(将开发分为面向对象分析(将开发分为面向对象分析(将开发分为面向对象分析(OOAOOA),面向对象设计),面向对象设计),面向对象设计),面向对象设计(OODOOD),和面向对象编程(),和面向对象编程(),和面向对象编程(),和面向对象编程(OOPOOP)三个阶段。)三个阶段。)三个阶段。)三个阶段。针对这种开发模型,结合传统的测试步骤的划针对这种开发模型,结合传统的测试步骤的划针对这种开发模型,结合传统的测试步骤的划针对这种开发模型,结合传统的测试步骤的划分,我们把面向对象的软件测试分为:分,我们把面向对象的软件测试分为:分,我们把面向对象的软件测试分为:分,我们把面向对象的软件测试分为:面向对象分面向对象分面向对象分面向对象分析的测试析的测试析的测试析的测试,面向对象设计的测试面向对象设计的测试面向对象设计的测试面向对象设计的测试,面向对象编程的面向对象编程的面向对象编程的面向对象编程的测试测试测试测试,面向对象单元测试面向对象单元测试面向对象单元测试面向对象单元测试,面向对象集成测试面向对象集成测试面向对象集成测试面向对象集成测试,面面面面向对象系统测试向对象系统测试向对象系统测试向对象系统测试。7面向对象测试面向对象测试 在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数 y=Function(x);y=Function(x);只需要考虑一个函数(只需要考虑一个函数(只需要考虑一个函数(只需要考虑一个函数(Function()Function())的行为特点,)的行为特点,)的行为特点,)的行为特点,在面向对象程序中,你不得不同时考虑基类函数在面向对象程序中,你不得不同时考虑基类函数在面向对象程序中,你不得不同时考虑基类函数在面向对象程序中,你不得不同时考虑基类函数(Base:Function()Base:Function())的行为和继承类函数)的行为和继承类函数)的行为和继承类函数)的行为和继承类函数(Derived:Function()Derived:Function())的行为。)的行为。)的行为。)的行为。面向对象程序的结构不再是传统的功能模块结面向对象程序的结构不再是传统的功能模块结面向对象程序的结构不再是传统的功能模块结面向对象程序的结构不再是传统的功能模块结构,作为一个整体,原有集成测试所要求的逐步将构,作为一个整体,原有集成测试所要求的逐步将构,作为一个整体,原有集成测试所要求的逐步将构,作为一个整体,原有集成测试所要求的逐步将开发的模块搭建在一起进行测试的方法已不可能。开发的模块搭建在一起进行测试的方法已不可能。开发的模块搭建在一起进行测试的方法已不可能。开发的模块搭建在一起进行测试的方法已不可能。8面向对象测试面向对象测试 面向对象软件测试是根据面向对象的软面向对象软件测试是根据面向对象的软件开发过程结合面向对象的特点提出的。它件开发过程结合面向对象的特点提出的。它包括包括分析与设计模型测试技术分析与设计模型测试技术、类测试技术类测试技术、对象交互测试技术对象交互测试技术、类层次结构测试技术类层次结构测试技术、面向对象系统测试技术面向对象系统测试技术5大部分。大部分。9面向对象测试面向对象测试 面向对象软件对每个开发阶段都有不同面向对象软件对每个开发阶段都有不同以往的要求和结果,已经不可能用功能细化以往的要求和结果,已经不可能用功能细化的观点来检测面向对象分析和设计的结果。的观点来检测面向对象分析和设计的结果。针对面向对象软件的开发特点,应该有一种针对面向对象软件的开发特点,应该有一种新的测试模型。新的测试模型。10二、面向对象模型二、面向对象模型OOAOOAOODOODOOPOOPOOA OOA TestTestOOD OOD TestTestOOP TestOOP TestOO UnitOO UnitTestTestOO Integrate TestOO Integrate TestOO System TestOO System Test11二、面向对象模型二、面向对象模型OOA:将问题空间中实现的功能进行抽象,问:将问题空间中实现的功能进行抽象,问题空间中的实例抽象为对象,用对象的结构反题空间中的实例抽象为对象,用对象的结构反映问题空间的复杂关系,用属性和服务表示实映问题空间的复杂关系,用属性和服务表示实例的特殊性和行为例的特殊性和行为OOD:建立类结构或进一步构造类库,实现分:建立类结构或进一步构造类库,实现分析结果对问题空间的抽象。析结果对问题空间的抽象。OOP:软件的计算机实现。:软件的计算机实现。12二、面向对象模型二、面向对象模型 OOA Test:面向对象分析的测试面向对象分析的测试 OOD Test:面向对象设计的测试面向对象设计的测试OOP Test:面向对象编程的测试面向对象编程的测试 OO Unit Test:面向对象单元测试面向对象单元测试OO Integrate Test:面向对象集成测试面向对象集成测试 OO System Test:面向对象系统测试面向对象系统测试13 三、面向对象分析的测试三、面向对象分析的测试 OOA直接映射问题空间,全面地在问题直接映射问题空间,全面地在问题空间中实现功能的现实抽象化。空间中实现功能的现实抽象化。OOA必须回必须回答:答:(1)为完成用户要求,系统应提供哪些功能)为完成用户要求,系统应提供哪些功能(2)系统应由哪些对象构成)系统应由哪些对象构成(3)每个对象应有哪些属性和服务)每个对象应有哪些属性和服务(4)对象间应有怎样的联系)对象间应有怎样的联系14三、面向对象分析的测试三、面向对象分析的测试n n对对OOA阶段的测试划分为以下五个方面:阶段的测试划分为以下五个方面:对类和对象范围的测试对类和对象范围的测试 对结构范围的测试对结构范围的测试 对主题的测试对主题的测试 对定义的属性和实例关联的测试对定义的属性和实例关联的测试 对定义的服务和消息关联的测试对定义的服务和消息关联的测试15(一)对类和对象范围的测试(一)对类和对象范围的测试 OOAOOA中认定的对象是对问题空间中的结构,其他系中认定的对象是对问题空间中的结构,其他系中认定的对象是对问题空间中的结构,其他系中认定的对象是对问题空间中的结构,其他系统,设备,被记忆的事件,系统涉及的人员等实际实统,设备,被记忆的事件,系统涉及的人员等实际实统,设备,被记忆的事件,系统涉及的人员等实际实统,设备,被记忆的事件,系统涉及的人员等实际实例的抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:(1 1)抽象的对象是否全面,是否问题空间中所有涉及)抽象的对象是否全面,是否问题空间中所有涉及)抽象的对象是否全面,是否问题空间中所有涉及)抽象的对象是否全面,是否问题空间中所有涉及到的实例都反映在认定的抽象对象中。到的实例都反映在认定的抽象对象中。到的实例都反映在认定的抽象对象中。到的实例都反映在认定的抽象对象中。(2 2)认定的对象是否具有多个属性。只有一个属性的认定的对象是否具有多个属性。只有一个属性的认定的对象是否具有多个属性。只有一个属性的认定的对象是否具有多个属性。只有一个属性的对象通常应看成其他对象的属性,而不是抽象为独立对象通常应看成其他对象的属性,而不是抽象为独立对象通常应看成其他对象的属性,而不是抽象为独立对象通常应看成其他对象的属性,而不是抽象为独立的对象。的对象。的对象。的对象。16(3 3)对认定为同一对象的实例是否有共同的,区别对认定为同一对象的实例是否有共同的,区别对认定为同一对象的实例是否有共同的,区别对认定为同一对象的实例是否有共同的,区别于其他实例的共同属性。于其他实例的共同属性。于其他实例的共同属性。于其他实例的共同属性。(4 4)对认定为同一对象的实例是否提供或需要相同)对认定为同一对象的实例是否提供或需要相同)对认定为同一对象的实例是否提供或需要相同)对认定为同一对象的实例是否提供或需要相同的服务,如果服务随着不同的实例而变化,认定的的服务,如果服务随着不同的实例而变化,认定的的服务,如果服务随着不同的实例而变化,认定的的服务,如果服务随着不同的实例而变化,认定的对象就需要分解或利用继承性来分类表示。对象就需要分解或利用继承性来分类表示。对象就需要分解或利用继承性来分类表示。对象就需要分解或利用继承性来分类表示。(5 5)认定的对象的名称应该尽量准确,适用。认定的对象的名称应该尽量准确,适用。认定的对象的名称应该尽量准确,适用。认定的对象的名称应该尽量准确,适用。17(一)(一)(一)(一)对类和对象范围的测试对类和对象范围的测试 如何在众多调查资料中进行确定类与对象呢?解决这如何在众多调查资料中进行确定类与对象呢?解决这如何在众多调查资料中进行确定类与对象呢?解决这如何在众多调查资料中进行确定类与对象呢?解决这一问题的方法一般包含以下几个方面一问题的方法一般包含以下几个方面一问题的方法一般包含以下几个方面一问题的方法一般包含以下几个方面(1 1)基础素材)基础素材)基础素材)基础素材(2 2)潜在的对象)潜在的对象)潜在的对象)潜在的对象(3 3)确定对象)确定对象)确定对象)确定对象(4 4)图形表示,用图形化描述类和对象)图形表示,用图形化描述类和对象)图形表示,用图形化描述类和对象)图形表示,用图形化描述类和对象18(二)对结构范围的测试(二)对结构范围的测试(二)对结构范围的测试(二)对结构范围的测试 结构表示问题空间的复杂程度。标识结构的目的结构表示问题空间的复杂程度。标识结构的目的结构表示问题空间的复杂程度。标识结构的目的结构表示问题空间的复杂程度。标识结构的目的在于管理问题域模型。在在于管理问题域模型。在在于管理问题域模型。在在于管理问题域模型。在OOAOOA中,结构是指中,结构是指中,结构是指中,结构是指泛化泛化泛化泛化特化结构特化结构特化结构特化结构(is a)(is a)和和和和整体整体整体整体部分结构部分结构部分结构部分结构(has a)(has a)两部分两部分两部分两部分的总和。的总和。的总和。的总和。191 1、确定泛化、确定泛化、确定泛化、确定泛化特化结构(分类结构)特化结构(分类结构)特化结构(分类结构)特化结构(分类结构)uu对于结构中的一种对象,尤其是处于高层的对对于结构中的一种对象,尤其是处于高层的对对于结构中的一种对象,尤其是处于高层的对对于结构中的一种对象,尤其是处于高层的对象,是否在问题空间中含有不同于下一层对象象,是否在问题空间中含有不同于下一层对象象,是否在问题空间中含有不同于下一层对象象,是否在问题空间中含有不同于下一层对象的特殊性可能,即是否能派生出下一层对象的特殊性可能,即是否能派生出下一层对象的特殊性可能,即是否能派生出下一层对象的特殊性可能,即是否能派生出下一层对象uu对于结构中的一种对象,尤其是处于同一低层对于结构中的一种对象,尤其是处于同一低层对于结构中的一种对象,尤其是处于同一低层对于结构中的一种对象,尤其是处于同一低层的对象,是否能抽象出现实中有有意义的更一的对象,是否能抽象出现实中有有意义的更一的对象,是否能抽象出现实中有有意义的更一的对象,是否能抽象出现实中有有意义的更一般的上层对象般的上层对象般的上层对象般的上层对象uu对所有认定的对象,是否能在问题空间内向上对所有认定的对象,是否能在问题空间内向上对所有认定的对象,是否能在问题空间内向上对所有认定的对象,是否能在问题空间内向上层抽象出在现实中有意义的对象层抽象出在现实中有意义的对象层抽象出在现实中有意义的对象层抽象出在现实中有意义的对象uu高层的对象的特性是否完全体现下层的共性高层的对象的特性是否完全体现下层的共性高层的对象的特性是否完全体现下层的共性高层的对象的特性是否完全体现下层的共性uu低层的对象是否有高层特性基础上的特殊性低层的对象是否有高层特性基础上的特殊性低层的对象是否有高层特性基础上的特殊性低层的对象是否有高层特性基础上的特殊性202 2、确定整体、确定整体、确定整体、确定整体部分结构(组装结构)部分结构(组装结构)部分结构(组装结构)部分结构(组装结构)uu整体(对象)和部分(对象)的组装关系是否整体(对象)和部分(对象)的组装关系是否整体(对象)和部分(对象)的组装关系是否整体(对象)和部分(对象)的组装关系是否符合现实的关系符合现实的关系符合现实的关系符合现实的关系uu整体(对象)和部分(对象)是否在考虑的问整体(对象)和部分(对象)是否在考虑的问整体(对象)和部分(对象)是否在考虑的问整体(对象)和部分(对象)是否在考虑的问题空间中的有实际应用题空间中的有实际应用题空间中的有实际应用题空间中的有实际应用uu整体(对象)是否遗漏了反映在问题空间中有整体(对象)是否遗漏了反映在问题空间中有整体(对象)是否遗漏了反映在问题空间中有整体(对象)是否遗漏了反映在问题空间中有用的部件用的部件用的部件用的部件uu部分(对象)是否能够在问题空间中组装新的部分(对象)是否能够在问题空间中组装新的部分(对象)是否能够在问题空间中组装新的部分(对象)是否能够在问题空间中组装新的有现实意义的整体(对象)有现实意义的整体(对象)有现实意义的整体(对象)有现实意义的整体(对象)21(三)对主题的测试(三)对主题的测试 主题是一种知道研究和处理大型复杂模型主题是一种知道研究和处理大型复杂模型主题是一种知道研究和处理大型复杂模型主题是一种知道研究和处理大型复杂模型的机制。有助于分解系统,区分结构,避免过的机制。有助于分解系统,区分结构,避免过的机制。有助于分解系统,区分结构,避免过的机制。有助于分解系统,区分结构,避免过多的信息量同时出现所带来的麻烦。主题的确多的信息量同时出现所带来的麻烦。主题的确多的信息量同时出现所带来的麻烦。主题的确多的信息量同时出现所带来的麻烦。主题的确定可以帮助人们从一个更高的层次上观察和表定可以帮助人们从一个更高的层次上观察和表定可以帮助人们从一个更高的层次上观察和表定可以帮助人们从一个更高的层次上观察和表达系统的总体模型。主题如同文章对个部分内达系统的总体模型。主题如同文章对个部分内达系统的总体模型。主题如同文章对个部分内达系统的总体模型。主题如同文章对个部分内容的概要。容的概要。容的概要。容的概要。22对主题层的测试应该考虑以下方面:对主题层的测试应该考虑以下方面:uu依据依据依据依据George MilerGeorge Miler的的的的“7+2”7+2”原则,如果主题个原则,如果主题个原则,如果主题个原则,如果主题个数超过数超过数超过数超过7 7个,就要求对有较密切属性和服务的主个,就要求对有较密切属性和服务的主个,就要求对有较密切属性和服务的主个,就要求对有较密切属性和服务的主题进行归并。题进行归并。题进行归并。题进行归并。uu主题所反映的一组对象和结构是否具有相同和主题所反映的一组对象和结构是否具有相同和主题所反映的一组对象和结构是否具有相同和主题所反映的一组对象和结构是否具有相同和相近的属性和服务。相近的属性和服务。相近的属性和服务。相近的属性和服务。uu认定的主题是否是对象和结构更高层的抽象,认定的主题是否是对象和结构更高层的抽象,认定的主题是否是对象和结构更高层的抽象,认定的主题是否是对象和结构更高层的抽象,是否便于理解是否便于理解是否便于理解是否便于理解OOAOOA结果的概括。结果的概括。结果的概括。结果的概括。uu主题间的消息联系(抽象)是否代表了主题所主题间的消息联系(抽象)是否代表了主题所主题间的消息联系(抽象)是否代表了主题所主题间的消息联系(抽象)是否代表了主题所反映的对象和结构之间的所有关联。反映的对象和结构之间的所有关联。反映的对象和结构之间的所有关联。反映的对象和结构之间的所有关联。23(四)对定义的属性和实例关联的测试(四)对定义的属性和实例关联的测试 属性是用来描述对象或结构所反映的实属性是用来描述对象或结构所反映的实例的特性。而实例关联是反映实例集合间的例的特性。而实例关联是反映实例集合间的映射关系。映射关系。对属性和实例关联的测试从如下方面考对属性和实例关联的测试从如下方面考虑:虑:uu定义的属性是否对相应的对象和分类结构的每定义的属性是否对相应的对象和分类结构的每定义的属性是否对相应的对象和分类结构的每定义的属性是否对相应的对象和分类结构的每个现实实例都适用。个现实实例都适用。个现实实例都适用。个现实实例都适用。uu定义的属性在现实世界是否与这种实例关系密定义的属性在现实世界是否与这种实例关系密定义的属性在现实世界是否与这种实例关系密定义的属性在现实世界是否与这种实例关系密切。切。切。切。24uu定义的属性在问题空间是否与这种实例关系密定义的属性在问题空间是否与这种实例关系密定义的属性在问题空间是否与这种实例关系密定义的属性在问题空间是否与这种实例关系密切。切。切。切。uu定义的属性是否能够不依赖于其他属性被独立定义的属性是否能够不依赖于其他属性被独立定义的属性是否能够不依赖于其他属性被独立定义的属性是否能够不依赖于其他属性被独立理解。理解。理解。理解。uu定义的属性在分类结构中的位置是否恰当,低定义的属性在分类结构中的位置是否恰当,低定义的属性在分类结构中的位置是否恰当,低定义的属性在分类结构中的位置是否恰当,低层对象的共有属性是否在上层对象属性体现。层对象的共有属性是否在上层对象属性体现。层对象的共有属性是否在上层对象属性体现。层对象的共有属性是否在上层对象属性体现。uu在问题空间中每个对象的属性是否定义完整。在问题空间中每个对象的属性是否定义完整。在问题空间中每个对象的属性是否定义完整。在问题空间中每个对象的属性是否定义完整。uu定义的实例关联是否符合现实。定义的实例关联是否符合现实。定义的实例关联是否符合现实。定义的实例关联是否符合现实。uu在问题空间中实例关联是否定义完整,特别需在问题空间中实例关联是否定义完整,特别需在问题空间中实例关联是否定义完整,特别需在问题空间中实例关联是否定义完整,特别需要注意要注意要注意要注意1-1-多和多多和多多和多多和多-多的实例关联。多的实例关联。多的实例关联。多的实例关联。25具体步骤如下:具体步骤如下:1、确定属性的范围、确定属性的范围2、实例连接、实例连接3、详细说明属性和实例连接的约束、详细说明属性和实例连接的约束26(五)对定义的服务和消息关联的测试(五)对定义的服务和消息关联的测试 对象接到消息后所执行的操作称为为它对象接到消息后所执行的操作称为为它提供的服务。描述了系统需要执行的处理和提供的服务。描述了系统需要执行的处理和功能。定义服务的目的在于定义对象的行为功能。定义服务的目的在于定义对象的行为和对象间的通信(消息连接)。事实上,两和对象间的通信(消息连接)。事实上,两个对象之间可能存在着由于通信需要而形成个对象之间可能存在着由于通信需要而形成的关系,即消息连接。消息连接表示从一个的关系,即消息连接。消息连接表示从一个对象发送消息到另一个对象,由那个对象完对象发送消息到另一个对象,由那个对象完成某些处理。成某些处理。27 确定服务的具体解决方法包括四个基本步骤:确定服务的具体解决方法包括四个基本步骤:确定服务的具体解决方法包括四个基本步骤:确定服务的具体解决方法包括四个基本步骤:1 1、识别对象状态、识别对象状态、识别对象状态、识别对象状态2 2、识别所要请求的服务、识别所要请求的服务、识别所要请求的服务、识别所要请求的服务3 3、识别消息连接、识别消息连接、识别消息连接、识别消息连接4 4、定义服务、定义服务、定义服务、定义服务28对定义的服务和消息关联的测试从以下方面进行:对定义的服务和消息关联的测试从以下方面进行:对定义的服务和消息关联的测试从以下方面进行:对定义的服务和消息关联的测试从以下方面进行:uu对象和结构在问题空间的不同状态是否定义了相对象和结构在问题空间的不同状态是否定义了相对象和结构在问题空间的不同状态是否定义了相对象和结构在问题空间的不同状态是否定义了相应的服务。应的服务。应的服务。应的服务。uu对象或结构所需要的服务是否都定义了相应的消对象或结构所需要的服务是否都定义了相应的消对象或结构所需要的服务是否都定义了相应的消对象或结构所需要的服务是否都定义了相应的消息关联。息关联。息关联。息关联。uu定义的消息关联所指引的服务提供是否正确。定义的消息关联所指引的服务提供是否正确。定义的消息关联所指引的服务提供是否正确。定义的消息关联所指引的服务提供是否正确。uu沿着消息关联执行的线程是否合理,是否符合现沿着消息关联执行的线程是否合理,是否符合现沿着消息关联执行的线程是否合理,是否符合现沿着消息关联执行的线程是否合理,是否符合现实过程。实过程。实过程。实过程。uu定义的服务是否重复,是否定义了能够得到的服定义的服务是否重复,是否定义了能够得到的服定义的服务是否重复,是否定义了能够得到的服定义的服务是否重复,是否定义了能够得到的服务。务。务。务。29四、面向对象设计的测试四、面向对象设计的测试 面向对象设计(面向对象设计(面向对象设计(面向对象设计(OODOOD)采用)采用)采用)采用“造型的观点造型的观点造型的观点造型的观点”,以,以,以,以OOAOOA为基础归纳出类,并建立类结构或进一步构造成类库,实为基础归纳出类,并建立类结构或进一步构造成类库,实为基础归纳出类,并建立类结构或进一步构造成类库,实为基础归纳出类,并建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象。现分析结果对问题空间的抽象。现分析结果对问题空间的抽象。现分析结果对问题空间的抽象。OOD OOD 归纳的类,可以是归纳的类,可以是归纳的类,可以是归纳的类,可以是对象简单的延续,可以是不同对象的相同或相似的服务。对象简单的延续,可以是不同对象的相同或相似的服务。对象简单的延续,可以是不同对象的相同或相似的服务。对象简单的延续,可以是不同对象的相同或相似的服务。由此可见,由此可见,由此可见,由此可见,OODOOD不是在不是在不是在不是在OOAOOA上的另一思维方式的大动干上的另一思维方式的大动干上的另一思维方式的大动干上的另一思维方式的大动干戈,而是戈,而是戈,而是戈,而是OOAOOA的进一步细化和更高层的抽象。的进一步细化和更高层的抽象。的进一步细化和更高层的抽象。的进一步细化和更高层的抽象。面向对象设计(面向对象设计(面向对象设计(面向对象设计(OODOOD)是以)是以)是以)是以OOAOOA归纳出的类为基础,归纳出的类为基础,归纳出的类为基础,归纳出的类为基础,建立类结构甚至进一步构造成类库,实现分析结果对问题建立类结构甚至进一步构造成类库,实现分析结果对问题建立类结构甚至进一步构造成类库,实现分析结果对问题建立类结构甚至进一步构造成类库,实现分析结果对问题空间的抽象。空间的抽象。空间的抽象。空间的抽象。30OOD设计模型有四个部分和五个层次组成:设计模型有四个部分和五个层次组成:n n问题空间部件问题空间部件PDCn n人机交互部件人机交互部件HICn n任务管理部件任务管理部件TMCn n数据管理部件数据管理部件DMC31 五个层次为主题层、类与对象层、结构层、五个层次为主题层、类与对象层、结构层、五个层次为主题层、类与对象层、结构层、五个层次为主题层、类与对象层、结构层、属性层和服务层。这五个层次分别面向对象分析属性层和服务层。这五个层次分别面向对象分析属性层和服务层。这五个层次分别面向对象分析属性层和服务层。这五个层次分别面向对象分析方法中的定义主题、确定对象、确定结构、定义方法中的定义主题、确定对象、确定结构、定义方法中的定义主题、确定对象、确定结构、定义方法中的定义主题、确定对象、确定结构、定义属性、确定服务等行动。属性、确定服务等行动。属性、确定服务等行动。属性、确定服务等行动。问题空问题空问题空问题空间部件间部件间部件间部件人机交人机交人机交人机交互部件互部件互部件互部件任务管任务管任务管任务管理部件理部件理部件理部件数据管数据管数据管数据管理部件理部件理部件理部件主题层主题层主题层主题层类与对象层类与对象层类与对象层类与对象层结构层结构层结构层结构层属性层属性层属性层属性层服务层服务层服务层服务层问题空问题空问题空问题空间部件间部件间部件间部件人机交人机交人机交人机交互部件互部件互部件互部件任务管任务管任务管任务管理部件理部件理部件理部件数据管数据管数据管数据管理部件理部件理部件理部件结构层结构层结构层结构层32从以下方面对从以下方面对OOD进行测试:进行测试:uu确定测试的问题域确定测试的问题域确定测试的问题域确定测试的问题域uu人机交互部分设计的测试人机交互部分设计的测试人机交互部分设计的测试人机交互部分设计的测试uu对认定的类的测试对认定的类的测试对认定的类的测试对认定的类的测试uu对构造的类层次结构的测试对构造的类层次结构的测试对构造的类层次结构的测试对构造的类层次结构的测试uu对类库支持的测试对类库支持的测试对类库支持的测试对类库支持的测试uu对测试结果及对模型的测试覆盖率进行评估对测试结果及对模型的测试覆盖率进行评估对测试结果及对模型的测试覆盖率进行评估对测试结果及对模型的测试覆盖率进行评估33(一)确定测试的问题域(一)确定测试的问题域 在面向对象设计中,面向对象分析(在面向对象设计中,面向对象分析(在面向对象设计中,面向对象分析(在面向对象设计中,面向对象分析(OOAOOA)的结)的结)的结)的结果恰好符合面向对象设计的问题空间部分,因此果恰好符合面向对象设计的问题空间部分,因此果恰好符合面向对象设计的问题空间部分,因此果恰好符合面向对象设计的问题空间部分,因此OOAOOA的结果就是的结果就是的结果就是的结果就是OODOOD部分模型的一个完整部分。为部分模型的一个完整部分。为部分模型的一个完整部分。为部分模型的一个完整部分。为了解决一些特定设计所需要考虑的实际变化,要对了解决一些特定设计所需要考虑的实际变化,要对了解决一些特定设计所需要考虑的实际变化,要对了解决一些特定设计所需要考虑的实际变化,要对OOAOOA的结果进行一些改进和增补。根据需求的变化,的结果进行一些改进和增补。根据需求的变化,的结果进行一些改进和增补。根据需求的变化,的结果进行一些改进和增补。根据需求的变化,对对对对OOAOOA产生的模型中的某些类与对象、结构、属性、产生的模型中的某些类与对象、结构、属性、产生的模型中的某些类与对象、结构、属性、产生的模型中的某些类与对象、结构、属性、操作进行组合与分解。根据操作进行组合与分解。根据操作进行组合与分解。根据操作进行组合与分解。根据OODOOD的附加原则,增加的附加原则,增加的附加原则,增加的附加原则,增加必要的类、属性和关系。必要的类、属性和关系。必要的类、属性和关系。必要的类、属性和关系。34(一)确定测试的问题域(一)确定测试的问题域1 1、复用设计、复用设计、复用设计、复用设计2 2、把问题域相关的类关联起来、把问题域相关的类关联起来、把问题域相关的类关联起来、把问题域相关的类关联起来3 3、加入一般化类以建立类间协议、加入一般化类以建立类间协议、加入一般化类以建立类间协议、加入一般化类以建立类间协议4 4、调整继承支持级别、调整继承支持级别、调整继承支持级别、调整继承支持级别5 5、改进性嫩、改进性嫩、改进性嫩、改进性嫩6 6、加入较低层的构件、加入较低层的构件、加入较低层的构件、加入较低层的构件35(二)人机交互部件设计的测试(二)人机交互部件设计的测试 OOAOOA阶段给出所需的属性和操作,同时必须根阶段给出所需的属性和操作,同时必须根阶段给出所需的属性和操作,同时必须根阶段给出所需的属性和操作,同时必须根据需求把交互的细节加入到用户界面的设计中,包据需求把交互的细节加入到用户界面的设计中,包据需求把交互的细节加入到用户界面的设计中,包据需求把交互的细节加入到用户界面的设计中,包括有效的人机交互所必须的实际显示和输入。人机括有效的人机交互所必须的实际显示和输入。人机括有效的人机交互所必须的实际显示和输入。人机括有效的人机交互所必须的实际显示和输入。人机交互部件的测试策略由以下几个方面构成:用户分交互部件的测试策略由以下几个方面构成:用户分交互部件的测试策略由以下几个方面构成:用户分交互部件的测试策略由以下几个方面构成:用户分类;描述人及任务脚本;设计命令层;设计详细的类;描述人及任务脚本;设计命令层;设计详细的类;描述人及任务脚本;设计命令层;设计详细的类;描述人及任务脚本;设计命令层;设计详细的交互;继续做原型;设计交互;继续做原型;设计交互;继续做原型;设计交互;继续做原型;设计HICHIC类;根据图形用户界面类;根据图形用户界面类;根据图形用户界面类;根据图形用户界面进行设计;进行设计;进行设计;进行设计;36(二)人机交互部件设计的测试(二)人机交互部件设计的测试 1 1、用户分类、用户分类、用户分类、用户分类n n按技能层次分类:外行按技能层次分类:外行按技能层次分类:外行按技能层次分类:外行/初学者初学者初学者初学者/熟练者熟练者熟练者熟练者/专家专家专家专家n n按组织层次分类:行政人员按组织层次分类:行政人员按组织层次分类:行政人员按组织层次分类:行政人员/管理人员管理人员管理人员管理人员/专业技术人员专业技术人员专业技术人员专业技术人员/其他办事员其他办事员其他办事员其他办事员n n按职能分类:顾客按职能分类:顾客按职能分类:顾客按职能分类:顾客/职员职员职员职员37(二)人机交互部件设计的测试(二)人机交互部件设计的测试 2 2、描述人及其任务脚本、描述人及其任务脚本、描述人及其任务脚本、描述人及其任务脚本 3 3、设计命令层、设计命令层、设计命令层、设计命令层 4 4、设计详细的交互、设计详细的交互、设计详细的交互、设计详细的交互 5 5、继续做原型、继续做原型、继续做原型、继续做原型 6 6、设计、设计、设计、设计HICHIC类类类类 7 7、根据、根据、根据、根据GUIGUI进行设计进行设计进行设计进行设计38(三)对任务管理部件(三)对任务管理部件(TMC)设计的测试)设计的测试 OODOOD中,任务是指系统为了达到某一设定目标中,任务是指系统为了达到某一设定目标中,任务是指系统为了达到某一设定目标中,任务是指系统为了达到某一设定目标而进行的一连串数据操作(或服务),若干任务的并而进行的一连串数据操作(或服务),若干任务的并而进行的一连串数据操作(或服务),若干任务的并而进行的一连串数据操作(或服务),若干任务的并发执行叫做多任务。任务能简化并发行为的设计和编发执行叫做多任务。任务能简化并发行为的设计和编发执行叫做多任务。任务能简化并发行为的设计和编发执行叫做多任务。任务能简化并发行为的设计和编码,码,码,码,TMCTMC的设计就是针对任务项,对一连串数据操的设计就是针对任务项,对一连串数据操的设计就是针对任务项,对一连串数据操的设计就是针对任务项,对一连串数据操作进行定义和封装,对于多任务要确定任务协调部件,作进行定义和封装,对于多任务要确定任务协调部件,作进行定义和封装,对于多任务要确定任务协调部件,作进行定义和封装,对于多任务要确定任务协调部件,以达到系统在运行中对各项任务的合理组织与管理以达到系统在运行中对各项任务的合理组织与管理以达到系统在运行中对各项任务的合理组织与管理以达到系统在运行中对各项任务的合理组织与管理39(三)对任务管理部件(三)对任务管理部件(TMC)设计的)设计的测试测试1 1、TMCTMC设计策略设计策略设计策略设计策略qq识别事件驱动任务识别事件驱动任务识别事件驱动任务识别事件驱动任务qq识别时钟驱动任务识别时钟驱动任务识别时钟驱动任务识别时钟驱动任务qq识别优先任务和关键任务识别优先任务和关键任务识别优先任务和关键任务识别优先任务和关键任务qq识别协调者识别协调者识别协调者识别协调者qq审查每个任务,使任务数尽可能少审查每个任务,使任务数尽可能少审查每个任务,使任务数尽可能少审查每个任务,使任务数尽可能少qq定义每个任务:包括任务名、驱动方式、触发该任务定义每个任务:包括任务名、驱动方式、触发该任务定义每个任务:包括任务名、驱动方式、触发该任务定义每个任务:包括任务名、驱动方式、触发该任务的事件、时间间隔、如何通信等的事件、时间间隔、如何通信等的事件、时间间隔、如何通信等的事件、时间间隔、如何通信等40(三)对任务管理部件(三)对任务管理部件(TMC)设计的测)设计的测试试2 2、设计步骤、设计步骤、设计步骤、设计步骤qq对类和对象进行细化,建立系统的对类和对象进行细化,建立系统的对类和对象进行细化,建立系统的对类和对象进行细化,建立系统的OOAOOA和和和和OODOOD工作表格。工作表格。工作表格。工作表格。qq审查审查审查审查OOAOOA和和和和OODOOD工作表格。工作表格。工作表格。工作表格。qq构建新的类。构建新的类。构建新的类。构建新的类。任务管理部件一般在信息系统中使用较任务管理部件一般在信息系统中使用较少,在控制系统中应用较多。少,在控制系统中应用较多。41(四)对数据管理部件(四)对数据管理部件(DMC)设计的测试)设计的测试 数据管理部件提供了在数据管理系统中存储和检数据管理部件提供了在数据管理系统中存储和检数据管理部件提供了在数据管理系统中存储和检数据管理部件提供了在数据管理系统中存储和检索对象的基本结构,包括对永久性数据的访问和管理。索对象的基本结构,包括对永久性数据的访问和管理。索对象的基本结构,包括对永久性数据的访问和管理。索对象的基本结构,包括对永久性数据的访问和管理。它分离了数据管理机构所关心的事项,包括文件、关它分离了数据管理机构所关心的事项,包括文件、关它分离了数据管理机构所关心的事项,包括文件、关它分离了数据管理机构所关心的事项,包括文件、关系型系型系型系型DBMSDBMS和面向对象和面向对象和面向对象和面向对象DBMSDBMS等。等。等。等。42(四)对数据管理部件(四)对数据管理部件(DMC)设计的测试)设计的测试1 1、数据管理方法、数据管理方法、数据管理方法、数据管理方法n n文件管理文件管理文件管理文件管理n n关系数据库管理系统关系数据库管理系统关系数据库管理系统关系数据库管理系统n n面向对象数据库管

    注意事项

    本文(面向对象测试技术PPT.ppt)为本站会员(满***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开