软件测试面向对象测试技术精.ppt
《软件测试面向对象测试技术精.ppt》由会员分享,可在线阅读,更多相关《软件测试面向对象测试技术精.ppt(59页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、软件测试面向对象测试技术软件测试面向对象测试技术第1页,本讲稿共59页一、面向对象测试概述一、面向对象测试概述1.传统的软件开发存在的问题传统的软件开发存在的问题(1)软件重用性差)软件重用性差(2)软件可维护性差)软件可维护性差(3)开发出的软件不易满足用户需求)开发出的软件不易满足用户需求第2页,本讲稿共59页一、面向对象测试概述一、面向对象测试概述2、面向对象技术、面向对象技术基本概念基本概念(1)对象)对象(2)对象的状态和行为)对象的状态和行为(3)类)类(4)类的结构(类间关系)类的结构(类间关系)(5)消息和方法)消息和方法第3页,本讲稿共59页一、面向对象测试概述一、面向对象测
2、试概述 我们生活在一个对象的世界里我们生活在一个对象的世界里,每个对象有一定的,每个对象有一定的属性属性,把属性,把属性相同的对象进行归纳就形成相同的对象进行归纳就形成类类例如:家具就可以看作类,例如:家具就可以看作类,其主要的属性有价格、尺寸、重量、其主要的属性有价格、尺寸、重量、位置和颜色等位置和颜色等无论我们谈论桌子、椅子还是沙发、衣橱,这些属性总是可用无论我们谈论桌子、椅子还是沙发、衣橱,这些属性总是可用的,因为它们都是家具而继承了为类定义的所有属性。的,因为它们都是家具而继承了为类定义的所有属性。除了属性之外,每个对象可以被一系列不同的方式操纵,它可以除了属性之外,每个对象可以被一系
3、列不同的方式操纵,它可以被买卖、移动、修改被买卖、移动、修改(如漆上不同的颜色如漆上不同的颜色)。这些操作或方法将改变对象的一个或多个属性。这些操作或方法将改变对象的一个或多个属性。类的合法操作可以和对象的定义联系在一起,并且被类的所有实例继承。类的合法操作可以和对象的定义联系在一起,并且被类的所有实例继承。第4页,本讲稿共59页一、面向对象测试概述一、面向对象测试概述面向对象特征面向对象特征(1)对象唯一性)对象唯一性(2)分类性)分类性(3)继承性)继承性(4)多态性)多态性第5页,本讲稿共59页一、面向对象测试概述一、面向对象测试概述面向对象要素面向对象要素(1)抽象)抽象(2)封装)封
4、装(3)共享)共享第6页,本讲稿共59页 面向对象软件开发方法与传统的软件开面向对象软件开发方法与传统的软件开发方法的区别:发方法的区别:(1)调查、分析系统需求,建立一个全面、)调查、分析系统需求,建立一个全面、合理、统一的模型。合理、统一的模型。(2)对象设计。)对象设计。(3)程序实现。)程序实现。第7页,本讲稿共59页面向对象软件开发过程面向对象软件开发过程 面向对象的开发模型突破了传统的瀑布模型,将开面向对象的开发模型突破了传统的瀑布模型,将开面向对象的开发模型突破了传统的瀑布模型,将开面向对象的开发模型突破了传统的瀑布模型,将开发分为面向对象分析(发分为面向对象分析(发分为面向对象
5、分析(发分为面向对象分析(OOAOOA),面向对象设计(),面向对象设计(),面向对象设计(),面向对象设计(OODOOD),),),),和面向对象编程(和面向对象编程(和面向对象编程(和面向对象编程(OOPOOP)三个阶段。)三个阶段。)三个阶段。)三个阶段。针对这种开发模型,结合传统的测试步骤的划分,针对这种开发模型,结合传统的测试步骤的划分,针对这种开发模型,结合传统的测试步骤的划分,针对这种开发模型,结合传统的测试步骤的划分,我们把面向对象的软件测试分为:我们把面向对象的软件测试分为:我们把面向对象的软件测试分为:我们把面向对象的软件测试分为:面向对象分析的测试面向对象分析的测试面向对
6、象分析的测试面向对象分析的测试,面向对象设计的测试面向对象设计的测试面向对象设计的测试面向对象设计的测试,面向对象面向对象面向对象面向对象编程的测试编程的测试编程的测试编程的测试;面向对象单元测试面向对象单元测试面向对象单元测试面向对象单元测试,面向对象集成测试面向对象集成测试面向对象集成测试面向对象集成测试,面向对象系面向对象系面向对象系面向对象系统测试统测试统测试统测试。第8页,本讲稿共59页面向对象测试面向对象测试 在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数在传统的面向过程程序中,对于函数 y=Function(x);y=Functi
7、on(x);只需要考虑一个函数(只需要考虑一个函数(只需要考虑一个函数(只需要考虑一个函数(Function()Function())的行为特点,在面)的行为特点,在面)的行为特点,在面)的行为特点,在面向对象程序中,你不得不同时考虑基类函数(向对象程序中,你不得不同时考虑基类函数(向对象程序中,你不得不同时考虑基类函数(向对象程序中,你不得不同时考虑基类函数(Base:FunctionBase:Function()())的行为和继承类函数()的行为和继承类函数()的行为和继承类函数()的行为和继承类函数(Derived:Function()Derived:Function())的行为。)的行
8、为。)的行为。)的行为。面向对象程序的结构不再是传统的功能模块结构,作为一面向对象程序的结构不再是传统的功能模块结构,作为一面向对象程序的结构不再是传统的功能模块结构,作为一面向对象程序的结构不再是传统的功能模块结构,作为一个整体,原有集成测试所要求的逐步将开发的模块搭建在一个整体,原有集成测试所要求的逐步将开发的模块搭建在一个整体,原有集成测试所要求的逐步将开发的模块搭建在一个整体,原有集成测试所要求的逐步将开发的模块搭建在一起进行测试的方法已不可能。起进行测试的方法已不可能。起进行测试的方法已不可能。起进行测试的方法已不可能。第9页,本讲稿共59页面向对象测试面向对象测试 面向对象软件对每
9、个开发阶段都有不同面向对象软件对每个开发阶段都有不同以往的要求和结果,已经不可能用功能细化以往的要求和结果,已经不可能用功能细化的观点来检测面向对象分析和设计的结果。的观点来检测面向对象分析和设计的结果。针对面向对象软件的开发特点,应该有一种针对面向对象软件的开发特点,应该有一种新的测试模型。新的测试模型。第10页,本讲稿共59页二、面向对象模型二、面向对象模型OOAOOAOODOODOOPOOPOOA OOA TestTestOOD OOD TestTestOOP TestOOP TestOO UnitOO UnitTestTestOO Integrate TestOO Integrate
10、TestOO System TestOO System TestOOA TestOOA Test:面向对象分析的面向对象分析的面向对象分析的面向对象分析的测试测试测试测试,OOD TestOOD Test:面向对象设计的面向对象设计的面向对象设计的面向对象设计的测试测试测试测试,OOP TestOOP Test:面向对象编程的面向对象编程的面向对象编程的面向对象编程的测试测试测试测试;OO Unit TestOO Unit Test:面向对象单元面向对象单元面向对象单元面向对象单元测试测试测试测试,OO Integrate TestOO Integrate Test:面向对象面向对象面向对象面
11、向对象集成测试集成测试集成测试集成测试,OO System TestOO System Test:面向对象系面向对象系面向对象系面向对象系统测试统测试统测试统测试。第11页,本讲稿共59页二、面向对象模型二、面向对象模型OOA TestOOA Test和和和和OOD Test:OOD Test:是对分析和设计结果的测试,主要是是对分析和设计结果的测试,主要是是对分析和设计结果的测试,主要是是对分析和设计结果的测试,主要是对分析设计生成的文档进行,是软件开发前期的关键性测对分析设计生成的文档进行,是软件开发前期的关键性测对分析设计生成的文档进行,是软件开发前期的关键性测对分析设计生成的文档进行,
12、是软件开发前期的关键性测试;试;试;试;OOP Test:OOP Test:主要针对编程风格和程序代码实现进行测试看,其主要针对编程风格和程序代码实现进行测试看,其主要针对编程风格和程序代码实现进行测试看,其主要针对编程风格和程序代码实现进行测试看,其测试内容主要在面向对象单元和面向对象集成测试中体现;测试内容主要在面向对象单元和面向对象集成测试中体现;测试内容主要在面向对象单元和面向对象集成测试中体现;测试内容主要在面向对象单元和面向对象集成测试中体现;OO Unit Test:OO Unit Test:对程序内部具体单一的功能模块的测试。主要是对程序内部具体单一的功能模块的测试。主要是对程
13、序内部具体单一的功能模块的测试。主要是对程序内部具体单一的功能模块的测试。主要是对类的测试。对类的测试。对类的测试。对类的测试。OO Integrate Test:OO Integrate Test:主要对系统内部相互服务进行测试,主要对系统内部相互服务进行测试,主要对系统内部相互服务进行测试,主要对系统内部相互服务进行测试,如方法间的相互作用,类间的消息传递等。如方法间的相互作用,类间的消息传递等。如方法间的相互作用,类间的消息传递等。如方法间的相互作用,类间的消息传递等。OO System Test:OO System Test:是面向对象测试的最后阶段的测试,主是面向对象测试的最后阶段的
14、测试,主是面向对象测试的最后阶段的测试,主是面向对象测试的最后阶段的测试,主要以用户需求为测试标准,借鉴要以用户需求为测试标准,借鉴要以用户需求为测试标准,借鉴要以用户需求为测试标准,借鉴OOAOOA及其测试结果。及其测试结果。及其测试结果。及其测试结果。第12页,本讲稿共59页二、面向对象模型二、面向对象模型OOA:将问题空间中实现的功能进行抽象,问:将问题空间中实现的功能进行抽象,问题空间中的实例抽象为对象,用对象的结构反题空间中的实例抽象为对象,用对象的结构反映问题空间的复杂关系,用属性和服务表示实映问题空间的复杂关系,用属性和服务表示实例的特殊性和行为例的特殊性和行为OOD:建立类结构
15、或进一步构造类库,实现分:建立类结构或进一步构造类库,实现分析结果对问题空间的抽象。析结果对问题空间的抽象。OOP:软件的计算机实现。:软件的计算机实现。第13页,本讲稿共59页 三、面向对象分析和设计的测试三、面向对象分析和设计的测试n nOOA TestOOA Test和和和和OOD Test:OOD Test:是对分析和设计结果的测试,主是对分析和设计结果的测试,主是对分析和设计结果的测试,主是对分析和设计结果的测试,主要是对分析设计生成的文档进行,是软件开发前期的关键要是对分析设计生成的文档进行,是软件开发前期的关键要是对分析设计生成的文档进行,是软件开发前期的关键要是对分析设计生成的
16、文档进行,是软件开发前期的关键性测试;性测试;性测试;性测试;n n OOAOOA直接映射问题空间,全面地在问题空间中实现功能直接映射问题空间,全面地在问题空间中实现功能直接映射问题空间,全面地在问题空间中实现功能直接映射问题空间,全面地在问题空间中实现功能的现实抽象化。的现实抽象化。的现实抽象化。的现实抽象化。OOAOOA必须回答:必须回答:必须回答:必须回答:n n(1 1)为完成用户要求,系统应提供哪些功能)为完成用户要求,系统应提供哪些功能)为完成用户要求,系统应提供哪些功能)为完成用户要求,系统应提供哪些功能n n(2 2)系统应由哪些对象构成)系统应由哪些对象构成)系统应由哪些对象
17、构成)系统应由哪些对象构成n n(3 3)每个对象应有哪些属性和服务)每个对象应有哪些属性和服务)每个对象应有哪些属性和服务)每个对象应有哪些属性和服务n n(4 4)对象间应有怎样的联系)对象间应有怎样的联系)对象间应有怎样的联系)对象间应有怎样的联系第14页,本讲稿共59页三、面向对象分析和设计的测试三、面向对象分析和设计的测试 面向对象设计(面向对象设计(面向对象设计(面向对象设计(OODOOD)采用)采用)采用)采用“造型的观点造型的观点造型的观点造型的观点”,以,以,以,以OOAOOA为基础为基础为基础为基础归纳出类,并建立类结构或进一步构造成类库,实现分析结果对问题归纳出类,并建立
18、类结构或进一步构造成类库,实现分析结果对问题归纳出类,并建立类结构或进一步构造成类库,实现分析结果对问题归纳出类,并建立类结构或进一步构造成类库,实现分析结果对问题空间的抽象。空间的抽象。空间的抽象。空间的抽象。OOD OOD 归纳的类,可以是对象简单的延续,可以是归纳的类,可以是对象简单的延续,可以是归纳的类,可以是对象简单的延续,可以是归纳的类,可以是对象简单的延续,可以是不同对象的相同或相似的服务。由此可见,不同对象的相同或相似的服务。由此可见,不同对象的相同或相似的服务。由此可见,不同对象的相同或相似的服务。由此可见,OODOOD不是在不是在不是在不是在OOAOOA上上上上的另一思维方
19、式的大动干戈,而是的另一思维方式的大动干戈,而是的另一思维方式的大动干戈,而是的另一思维方式的大动干戈,而是OOAOOA的进一步细化和更高层的的进一步细化和更高层的的进一步细化和更高层的的进一步细化和更高层的抽象。抽象。抽象。抽象。面向对象设计(面向对象设计(面向对象设计(面向对象设计(OODOOD)是以)是以)是以)是以OOAOOA归纳出的类为基础,建归纳出的类为基础,建归纳出的类为基础,建归纳出的类为基础,建立类结构甚至进一步构造成类库,实现分析结果对问题空间立类结构甚至进一步构造成类库,实现分析结果对问题空间立类结构甚至进一步构造成类库,实现分析结果对问题空间立类结构甚至进一步构造成类库
20、,实现分析结果对问题空间的抽象。的抽象。的抽象。的抽象。第15页,本讲稿共59页三、面向对象分析和设计的测试三、面向对象分析和设计的测试对认定的对象的测试对认定的对象的测试 OOA OOA(面向对象分析)中认定的对象是对问题空间中的结构、(面向对象分析)中认定的对象是对问题空间中的结构、(面向对象分析)中认定的对象是对问题空间中的结构、(面向对象分析)中认定的对象是对问题空间中的结构、其他系统、设备、被记忆的事件、系统涉及的人员等实际实其他系统、设备、被记忆的事件、系统涉及的人员等实际实其他系统、设备、被记忆的事件、系统涉及的人员等实际实其他系统、设备、被记忆的事件、系统涉及的人员等实际实例的
21、抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:例的抽象。对它的测试可以从如下方面考虑:n n认定的对象是否全面认定的对象是否全面认定的对象是否全面认定的对象是否全面,其名称应该尽量准确、适用,是否问,其名称应该尽量准确、适用,是否问,其名称应该尽量准确、适用,是否问,其名称应该尽量准确、适用,是否问题空间中所涉及到的实例都反映在认定的抽象对象中。题空间中所涉及到的实例都反映在认定的抽象对象中。题空间中所涉及到的实例都反映在认定的抽象对象中。题空间中所涉及到的实例都反映在认定的抽象对象中。n n认定的对象是否具有多个属性认定的
22、对象是否具有多个属性认定的对象是否具有多个属性认定的对象是否具有多个属性。只有一个属性的对象通常应看。只有一个属性的对象通常应看。只有一个属性的对象通常应看。只有一个属性的对象通常应看作其他对象的属性而不是抽象为独立的对象作其他对象的属性而不是抽象为独立的对象作其他对象的属性而不是抽象为独立的对象作其他对象的属性而不是抽象为独立的对象n n对认定为同一对象的实例是否有共同的、区别于其他实例的共同对认定为同一对象的实例是否有共同的、区别于其他实例的共同对认定为同一对象的实例是否有共同的、区别于其他实例的共同对认定为同一对象的实例是否有共同的、区别于其他实例的共同属性,是否提供或需要相同的服务属性
23、,是否提供或需要相同的服务属性,是否提供或需要相同的服务属性,是否提供或需要相同的服务n n如果系统没有必要始终保持对象代表的如果系统没有必要始终保持对象代表的如果系统没有必要始终保持对象代表的如果系统没有必要始终保持对象代表的实例信息实例信息实例信息实例信息,提供或者,提供或者,提供或者,提供或者得到关于它的服务,认定的对象也无必要。得到关于它的服务,认定的对象也无必要。得到关于它的服务,认定的对象也无必要。得到关于它的服务,认定的对象也无必要。第16页,本讲稿共59页三、面向对象分析和设计的测试三、面向对象分析和设计的测试对认定的结构的测试对认定的结构的测试 认定的结构指的是多种对象的组织
24、方式,用来反映问题空间中的认定的结构指的是多种对象的组织方式,用来反映问题空间中的认定的结构指的是多种对象的组织方式,用来反映问题空间中的认定的结构指的是多种对象的组织方式,用来反映问题空间中的复杂实例和复杂关系。复杂实例和复杂关系。复杂实例和复杂关系。复杂实例和复杂关系。认定的分类结构测试要点:认定的分类结构测试要点:认定的分类结构测试要点:认定的分类结构测试要点:n n处于高层的对象,是否在问题空间中含有不同于下一层对象处于高层的对象,是否在问题空间中含有不同于下一层对象处于高层的对象,是否在问题空间中含有不同于下一层对象处于高层的对象,是否在问题空间中含有不同于下一层对象的特殊可能性,即
25、是否能派生出下一层对象。的特殊可能性,即是否能派生出下一层对象。的特殊可能性,即是否能派生出下一层对象。的特殊可能性,即是否能派生出下一层对象。n n处于同一低层的对象,是否能抽象出在现实中有意义的更一般的处于同一低层的对象,是否能抽象出在现实中有意义的更一般的处于同一低层的对象,是否能抽象出在现实中有意义的更一般的处于同一低层的对象,是否能抽象出在现实中有意义的更一般的上层对象。上层对象。上层对象。上层对象。n n对所有认定的对象,是否能在问题空间内向上层抽象出在现实中对所有认定的对象,是否能在问题空间内向上层抽象出在现实中对所有认定的对象,是否能在问题空间内向上层抽象出在现实中对所有认定的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 面向 对象 技术
限制150内