第14章 面向对象软件的测试
面向对象模型的软件测试

面向对象模型的软件测试软件测试是确保软件质量的重要环节,而面向对象模型的软件测试在现代软件开发中扮演着重要的角色。
本文将探讨面向对象模型的软件测试方法和其在软件开发中的应用。
一、什么是面向对象模型面向对象模型是一种软件设计和开发方法,它基于将现实世界的事物抽象为对象,并定义对象之间的关系和交互。
面向对象模型的三大特点是封装、继承和多态。
在面向对象模型中,软件系统的功能被划分为一系列的对象,每个对象具有特定的属性和行为。
对象通过消息传递来进行交互,从而完成各种功能。
二、面向对象模型的测试方法1. 单元测试单元测试是对软件中最小单位(类或方法)进行测试的方法。
在面向对象模型中,每个对象都被看作是一个独立的单元,因此需要对每个对象进行单元测试。
单元测试的目的是验证对象的功能是否正常,并发现对象中可能存在的错误和缺陷。
通过编写测试用例,执行测试代码并进行断言,可以对对象的各个方法和属性进行全面的测试。
2. 集成测试集成测试是测试多个对象之间的相互作用和协作的方法。
在面向对象模型中,对象之间通过消息传递来进行交互,因此需要对对象之间的接口和交互进行测试。
集成测试的目的是验证对象之间的协作是否顺利,并发现可能存在的错误和冲突。
通过模拟实际的交互场景,可以测试对象之间的消息传递和数据交换。
3. 系统测试系统测试是对整个软件系统进行测试的方法。
在面向对象模型中,系统由多个对象组成,因此需要对整个对象系统进行测试。
系统测试的目的是验证整个软件系统的功能和性能是否满足需求,并发现系统中可能存在的错误和问题。
通过编写全面的测试用例,可以对系统进行全面的功能和性能验证。
三、面向对象模型的软件测试应用面向对象模型的软件测试方法广泛应用于各种软件开发项目中,尤其是大型复杂系统的开发。
1. 在敏捷开发中的应用面向对象模型的软件测试适用于敏捷开发方法中的迭代开发和持续集成过程。
通过快速编写和执行测试用例,可以及时发现和修复软件中的问题,确保软件的质量和稳定性。
面向对象的软件测试

1. 测试的单元不同
2.集成环境测试不同 3.系统构成不同
9.7
本章小结
面向对象的软件包括单元测试、集成测试、系 统测试三个层次。面向对象的单元测试,即类测试, 分为两个部分,一是以方法为单元,另一是以类为 单元。对于面向对象的集成测试中重要的是类簇的 测试。而面向对象的系统测试时避免存在大量实际 使用条件下会诱发产生错误,其测试内容与传统的 系统测试相同,测试方法也可以大量沿用传统的系 统测试方法。但也有些专门针对面向对象的测试方 法,这主要针对系统功能测试,如基于UML状态图 的系统测试方法。
9.1.2 信息隐藏对测试的影响
在封装的基础上,为了进一步的数据、操作的安全 性,在面向对象的设计中又引入了信息的隐藏技术。信息 隐藏是指只让用户知道哪些确保用户正确使用一个对象所 必需的信息,其他信息对用户来说则被隐藏起来。对于面 向对象的设计中共有的属性和方法是可以访问的,而私有 的和受保护的属性和方法,其访问却是受到限制的。这样 一来,对于面向对象的测试,信息隐藏带来的主要问题则 是对象状态的观察问题。
9.1.3 继承对测试的影响
继承是面向对象设计中的另一重要特征。继承有利于代 码的复用,但也有些不足,主要体现在两个方面:一是继 承提供机制,使得超类的BUG进一步被带到其子类;二是 基于继承的代码重用可能会导致维修困难,这是主要的设 计质量问题。实践证明,继承运用得当,正确使用继承的 设计对类得测试时有利的。 从继承的不足可以看出,测试变得更加重要了,但对 于测试来说,继承却增加了测试的复杂性。
9.5
面向对象的系统测试
面向对象的系统测试对所有系统程 序和外部软、硬件系统构成的整体进 行测试,检验软件和其他系统配合工 作是否正确。它与传统的软件测试有 一定的相似度,可沿用传统的系统测 试方法。
面向对象软件的测试

C la s s _ A + o p e ra tio n 1 () + o p e ra tio n 2 ()
C la s s _ B + o p e ra tio n 3 ()
C la s s _ C + o p e ra tio n 2 () + o p e ra tio n 3 ()
图 Class_A类有两个实例 6 方法operation1()和op - eration2(),Class_B 6 类继承了Class_A类并 类 且实现了新的实例方法 之 operation3(),Class_ 间 C类继承了Class_B类, 的 覆盖了Class_B类的实 继 例方法operation3()和 承 实例方法operation2(). 关 系
对类进行测试时需要构建可执行的类实例,而 接口不存在任何构造方法无法被实现。
由于接口一定会在某个类中实现,因此就使 用一个实现接口的类来做测试。遵循以下原则:
如果接口没有被任何类实现就无需进行测试。 如果已被别的类实现,那么就针对实现该接口
的类进行测试。
(如下图6-8)
Interface_A
+ a_m ethod() + b_m ethod()
技巧,设计类测试用例和测试驱动程序的几种方 法; • 初步了解Junit。
6.1面向对象的测试与传统测试的比较
传统的测试计算机软件的策略是从“小型测 试”开始,逐步走向“大型测试”,且单元测试集 中在最小的可编译程序单位——子程序。
面向对象程序的结构不再是传统的功能模块 结构,而是作为一个整体,并且对每个开发阶段 都有不同以往的要求和结果,已经不可能用功能细 化的观点来检测面向对象分析和设计的结果。
面向对象的软件测试技术分析

面向对象的软件测试技术分析一、引言现代软件的蓬勃发展,越来越多的企业采用面向对象的开发模式。
针对这种开发模式,软件测试也需要进行相应的改进和完善,因此面向对象的软件测试技术成为了当前软件测试领域中的热门话题。
在本文中,我们将探讨面向对象的软件测试技术。
二、面向对象的软件测试概述面向对象是一种软件开发方法,其中一个基本的概念就是类。
在面向对象的软件中,类是代码的主要组成单位。
因此,面向对象的软件测试也必须考虑类的特征。
面向对象的软件测试是对类和对象进行测试,以确保它们的行为和功能符合预期。
面向对象的软件测试通常包括以下几个方面:1.类测试:测试类的属性和方法是否正确地实现了所有的需求和规范,并且是否符合受到测试的对象的约束。
2.对象测试:测试对象的方法和属性是否被正确的调用和使用。
3.集成测试:测试组成组件的类和对象之间协同进行时能否正常工作。
4.系统测试:测试整个系统的功能,性能和健壮性。
面向对象的软件测试技术通常需要识别类的特性和规范,开发测试用例来测试类和方法的正确性,使用覆盖率来改进测试,以及使用调试和性能分析工具来检测代码缺陷。
三、面向对象的软件测试技术详解1.识别类的特性和规范对于面向对象的软件测试,首先需要考虑到类的特性和规范。
这对于测试用例的开发至关重要。
一个好的测试用例需要很好地理解类的实现和应用场景。
例如:如果测试继承类,则测试用例必须包括涉及基类和派生类的所有方面。
更通用的规则是检查是否符合类的公有接口。
2.开发测试用例在面向对象的软件测试中,测试用例的开发和设计十分重要。
测试用例必须覆盖类的所有方法和属性,并对各种输入进行测试。
例如:如果类有一个方法来验证输入是否为邮政编码格式,则需要编写一些测试用例来测试针对ZipcodeFormat输入值的有效性,而不只是任意输入。
在这种情况下,编写一些测试用例来验证输入为“12345-6789”或“12345”等格式的有效性非常重要。
软件测试教学PPT-面向对象的软件测试

面向对象地集成测试
在面向对象系统地集成测试需求注意以 下几点:
面向对象系统本质上是通过小地,可重 用地组件构成。因此,集成测试对于面 向对象系统来说更重要。
面向对象系统下组件地开发一般更具并 行,因此对频繁集成地要求更高。
由于并行提高,集成测试时需求考虑类 地完成顺序,也需求设计驱动器来模拟 外没有完成地类功能。
面向对象地软件测试案例
HelloWorld类地测试 每一种语言在其学用书地第一个例子通
面向对象编程对测试地影响
面向对象编程可能对测试有几种方式地 影响,依赖于面向对象编程地方法。
某些类型地故障变得就不可能(不值得 去测试);
某些类型地故障变得更加可能(值得行 测试);
出现某些新地故障类型。 测试面向对象地类操作类似于测试一段
代码,它设置了函数参数,然后调用该函 数。继承是一种方便地生产多态地方式, 在调用点,关心地不是继承,而是多态。
状态 状态图
功能模型
功能模型描述了系统地所有计算。功能 模型指出发生了什么,动态模型确定什 么时候发生,而对象模型确定发生地客 体。功能模型由多张数据流图组成。
处理 数据流 动作对象 数据存储对象
面向对象软件地测试策略
面向对象测试地目地与传统地结构化软件 测试相同,都是需求在现实与时间范围内 利用有限地时间与工作量尽可能多地发现 错误。
面向对象系统测试一般都包含以下主题: 单元测试 类地集成测试 系统测试 回归测试 面向对象测试地有关模型
面向对象地单元测试
当考虑到面向对象软件时,单元测试地概 念发生了变化。面向对象软件引入了封装 与类地概念,这意味着每个类地实例(对 象)包装有属(数据)与处理这些数据地 操作(函数)。封装地类常是单元测试地 重点,然而,类包含地操作是最小地可测试 单元。
面向对象的软件测试过程

面向对象的软件测试过程随着信息化的发展,软件行业也越来越成熟,软件测试作为软件开发的重要环节,更是受到了广泛关注。
面向对象的软件测试作为最新的软件测试方式,越来越受到软件工程师们的关注和研究。
本文从面向对象的软件测试概述、面向对象的软件测试流程、面向对象的软件测试技术等多个方面进行论述,希望能够对读者有所帮助。
一、面向对象的软件测试概述面向对象的软件测试主要是针对面向对象的软件技术而言的。
它强调基于对象、面向对象和基于类的软件开发思想。
在软件测试中,面向对象的设计和实现越来越得到重视,主要是因为它与传统的数据驱动的测试方法不同。
传统的测试方法主要是将测试用例和程序输入进行匹配测试,很难完全覆盖整个软件的各个方面。
而面向对象的软件测试则不同,由于它更具有适应性,可以更好的应对软件的不同需求和不同制约条件。
二、面向对象的软件测试流程1.需求分析阶段需求分析是整个软件测试流程中的第一阶段。
在这个阶段,软件测试工程师需要仔细分析用户需求等,从而确定软件测试的目标和方法。
2.测试计划阶段在测试计划阶段,软件测试工程师需要进一步细化测试目标,并制定出具体的测试计划。
3.测试设计阶段在测试设计阶段,软件测试工程师主要是根据需求规格说明书,制定测试用例和测试场景等。
4.测试执行阶段在测试执行阶段,软件测试工程师需要执行测试用例,记录测试结果,同时进行错误跟踪和统计分析工作。
5.测试评价阶段在测试评价阶段,软件测试工程师需要将测试结果进行汇总和分析,并提供给开发人员和测试负责人。
三、面向对象的软件测试技术1.基于模型的测试基于模型的测试是面向对象的软件测试中应用最广泛的一种测试技术。
这种测试技术主要是基于系统模型和产生的测试数据对系统进行测试,从而发现系统中潜在的错误和缺陷。
2.基于模拟的测试基于模拟的测试是利用模拟的方式来测试系统的技术。
这种测试技术主要是利用模拟的方式来模拟系统的输入和输出,从而对系统进行测试,并发现其中存在的问题和缺陷。
面向对象软件的测试

三 面向对象分析的测试
1 对认定的对象的测试: OOA中认定的对象是对问题空间中的结构,其他系统,
设备,被记忆的事件,系统涉及的人员等实际实例的抽象。 对它的测试可以从如下方面考虑:
1.1 认定的对象是否全面,是否问题空间中所有涉及到的实 例都反映在认定的抽象对象中。
1.2 认定的对象是否具有多个属性。只有一个属性的对象通 常应看成其他对象的属性,而不是抽象为独立的对象。
三 面向对象分析的测试
5 对定义的服务和消息关联的测试 定义的服务,就是定义的每一种对象和结构在问题空
间所要求的行为。由于问题空中实例间必要的通信,在 OOA 中相应需要定义消息关联。对定义的服务和消息关 联的测试从如下方面进行:
5.1 对象和结构在问题空间的不同状态是否定义了相应的服 务。
5.2 对象或结构所需要的服务是否都定义了相应的消息关联。 5.3 定义的消息关联所指引的服务提供是否正确。 5.4 沿着消息关联执行的线程是否合理,是否符合现实过程。 5.5 定义的服务是否重复,是否定义了能够得到的服务。
3.3 类的层次结构是否是深度大,宽度小。
五 面向对象编程的测试
典型的面向对象程序具有继承、封装和多 态的新特性,这使得传统的测试策略必须 有所改变。封装是对数据的隐藏,外界只 能通过被提供的操作来访问或修改数据, 这样降低了数据被任意修改和读写的可能 性,降低了传统程序中对数据非法操作的 测试。继承是面向对象程序的重要特点, 继承使得代码的重用率提高,同时也使错 误传播的概率提高。
四 面向对象设计的测试
面向对象设计(OOD)采用"造型的观点", 以OOA为基础归纳出类,并建立类结构或 进一步构造成类库,实现分析结果对问题 空间的抽象。OOD 归纳的类,可以是对象 简单的延续,可以是不同对象的相同或相 似的服务。由此可见,OOD不是在OOA上 的另一思维方式的大动干戈,而是OOA的 进一步细化和更高层的抽象。
面向对象的软件测试

本科生课程论文---文献综述题目:面向对象的软件测试姓名:学号:学院:软件学院专业:软件工程年级:2010教师:王灿辉2013年05月20日面向对象的软件测试摘要:软件测试在整个软件项目开发过程中有着举足轻重的地位,测试技术的发展对于缩短测试周期、降低成本、提高质量都有着十分重要的意义。
本文介绍了软件测试的关键技术,并对面向对象软件测试技术进行了简单的研究,讨论了面向对象软件测试的测试策略、方法及测试技术。
随着软件产业的发展, 市场对软件质量的不断提高,软件测试不断受到重视。
几乎每个中大型IT企业的产品在发布前都需要大量的质量控制、测试和文档工作。
软件测试的重要性已成为企业生存与发展的核心。
关键词:软件质量性能测试软件测试面向对象1软件测试的概念1.1什么是软件测试软件测试就是在软件投入运行之前,对软件需求分析、设计规格说明和编码实现的最终审查,他是软件质量保证的关键步骤。
通常对软件测试的定义有两种描述:定义1:软件测试是为了发现错误而执行程序的过程。
定义2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例运行程序以及发现错误的过程,即执行测试步骤。
1.2软件测试的意义软件测试的意义在于保证软件产品的最终质量,在软件开发的过程中,对软件产品进行质量控制。
一般来说软件测试应由独立的产品评测中心负责,严格按照软件测试流程,制定测试计划、测试方案、测试规范,实施测试,对测试记录进行分析,并根据回归测试情况撰写测试报告。
测试是为了证明软件有缺陷,从而加以改正,而不是保证软件没有缺陷,缺陷是软件与生俱来的。
1.3软件测试技术的发展趋势我国的软件测试仍处于原始的初期,由于种种原因,我国的软件生产尚处于原始的“小作坊”型,离软件工程的需要,即实行工程化管理,用工业化,自动化的方法生产软件还有很大的距离。
软件测试更是属于原始时期的初期,即程序员凭自己的经验对程序进行调试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件工程系 软件测试
本章内容
面向对象技术特点的测试
➢ 封装、信息隐藏、继承、多态和动态绑定
面向对象软件开发阶段的测试
➢ 分析、设计、编程
面向对象软件测试层次
➢ 单元测试、集成测试、系统测试
应用Ant的Java项目持续集成
2
软件测试
本章内容
面向对象技术特点的测试
18
软件测试
信息隐藏对测试的影响
19
应用Junit测试两个私 有方法getData
难点:其它类中不能访 问getData
Java反射机制
➢ getDeclaredMehods() 获得方法
➢ 修改访问属性为可访 问
➢ invoke()调用对象的 方法
软件测试
测试私有方法getData()
20
Flooring类
Wood和Surface单元测试 Flooring集成测试
61
软件测试
其它类交互
参数交互 返回类对象 类方法中创建对象 类引用全局类对象
62
软件测试
集成测试步骤
① 选定检测的类,参考OOD分析结果,仔细分析类的状态和相应的行为,类 或方法间传递消息,前置条件和后置条件的界定等;
➢ 封装、信息隐藏、继承、多态和动态绑定
面向对象软件开发阶段的测试
➢ 分析、设计、编程
面向对象软件测试层次
➢ 单元测试、集成测试、系统测试
应用Ant的Java项目持续集成
29
软件测试
面向对象分析的测试
面向对象分析的测试需要考虑:
➢ 对认定的对象的测试 ➢ 对认定的结构的测试 ➢ 对认定的主题的测试 ➢ 对定义的属性和实例关联的测试 ➢ 对定义的服务和消息关联的测试
实例:
➢ Java EE开发的Web应用中有一个使用HttpRequest的对象,测试时需要启动Web 服务器,构造Request实例并填入所需要的值,测试完后需要停止Web服务器, 过程比较复杂。
➢ 设计的Mock Object符合实际对象的接口,开发一些代码来“欺骗”测试对象并 跟踪其行为。
6
11
软件测试
第三步 建立TestCase
12
软件测试
Mock测试工具
Java
➢ JMock ➢ MockCreator ➢ Mockrunner ➢ EasyMock ➢ MockMaker
.Net
➢ Nmock ➢ .NetMock
软件测试
EasyMock
https:///view/897573aba8956bec0875e373.html?from=s earch
46
软件测试
基于UML状态图测试的测试序列
@state0@event0[pred0]/actions0@statel@eventl[predl]/actionsl@⋯ ,其中@为分隔符。
47
软件测试
面向对象的单元测试
基于UML状态图的类测试主要步骤:
① 根据设计文档分析被测类的数据成员取值情况,导出对象的逻辑状态空间, 得到被测类的UML状态图
38
软件测试
常用的UML状态图覆盖准则
状态覆盖准则 迁移覆盖准则 状态-迁移覆盖准则 迁移对覆盖准则 全谓词公式覆盖准则 ZOT循环覆盖准则 全ZOT路径覆盖准则
39
软件测试
常用的UML状态图覆盖准则
状态覆盖准则
➢ 测试用例集T应该使UML状态图中的每一个状态至少被访问一次。
40
➢ 设计模型、功能调用结构图、类关系图或者实体关系图
58
软件测试
类层次结构
继承->类交互->组件->应用
➢ 类通过继承集成 ➢ 类通过交互集成 ➢ 类到组件的集成 ➢ 组件到应用系统的集成
59
软件测试
交互集成
对象交互通过消息传递实现 通过参数引用
60
软件测试
Wood和Flooring集成
测试步骤:
➢ 使用EasyMock生成Mock对象 ➢ 设定Mock对象的预期行为和输出 ➢ 将Mock对象切换到Replay状态 ➢ 调用Mock对象方法进行单元测试 ➢ 对Mock对象的行为进行验证
软件测试
EasyMock
使用EasyMock生成Mock对象
➢ 为指定的接口或类创建Mock对象
32
软件测试
本章内容
面向对象技术特点的测试
➢ 封装、信息隐藏、继承、多态和动态绑定
面向对象软件开发阶段的测试
➢ 分析、设计、编程
面向对象软件测试层次
➢ 单元测试、集成测试、系统测试
应用Ant的Java项目持续集成
33
软件测试
面向对象软件的测试层次
传统测试
面向对象测试
单元测试
1、方法级测试 类测试
软件测试
常用的UML状态图覆盖准则
迁移覆盖准则
➢ 测试用例集T应该使UML状态图中的每一个迁移都至少被激活一次。
41
软件测试
常用的UML状态图覆盖准则
状态-迁移覆 盖准则
➢ 测试用例 集T应该使 UML状态图 中的每一 个状态至 少被访问 一次,每 一个迁移 都至少被 激活一次
42
软件测试
常用的UML状态图覆盖准则
4
软件测试
封装对测试的影响
封装将数据、操作集成在一个类中 类中的方法执行依赖对象环境 测试类中的方法需要将类实例化 设计测试用例时需要考虑对象的状态 桩——模仿对象(Mock Object)
5
软件测试
封装对测试的影响
Mock Object类似于一个“仿真器”。
➢ 拥有与被测对象的“合作者”完全一致的接口 ➢ 测试中作为“合作者”传递给被测对象
父类子类及测试类UML类图关系
24
软件测试
超类的测试类
25
软件测试
子类的测试类
26
软ቤተ መጻሕፍቲ ባይዱ测试
多态和动态绑定
多态增加了系统运行的可能路径 加大了测试用例选取难度和数量 对于每一个父类出现的场合,应该考虑每一种子类对象的情况。
27
软件测试
例子:图形碰撞检测
28
软件测试
本章内容
面向对象技术特点的测试
以类为单元的单元测试侧重于测试对象的动态行为
➢ 动态行为依赖于对象的状态 ➢ 对象的状态通过对象数据成员的值反映出来
重点跟踪被监视对象数据成员的值的变化 基于UML状态图实现类测试
36
软件测试
面向对象的单元测试
UML状态图
测试上图中迁移的过程
① 生成对象 ② 向对象发送消息把对象的状态设置到状态A ③ 再发送消息调用对象的方法 ④ 检查对象的状态是否迁移到状态B
➢ 没有功能分解树 ➢ 层次关系比较复杂 ➢ 类的行为与它的状态密切相关 ➢ 类相互依赖紧密
55
软件测试
面向对象的集成测试
面向对象的集成测试特点
➢ 结构集成测试 ➢ 功能集成测试
集成测试方法
➢ 继承关系的类集成测试 ➢ 类交互的集成测试
56
软件测试
结构集成测试
方法:
➢ 静态测试
测试对象:
软件测试
信息隐藏对测试的影响
信息隐藏 对测试的 主要挑战 是:对象 状态的观 察问题
17
软件测试
信息隐藏对测试的影响
信息隐藏对测试的主要挑战是:对象状态的观察问题
获取类属性和状态的方法:
① 修改被测试类,增加一些操作提供对象的属性 ② 定义一个类继承被测试类,增加一些新操作 ③ Java语言通过反射机制获取方法与属性
② 给被测类加入用于设置和检查对象状态的新方法 ③ 对于UML状态图中的每个状态,确定该状态是哪些方法的合法起始状态 ④ 在每个状态中,从类中方法的调用关系图最下层开始,逐一测试类中的方法
48
软件测试
面向对象的单元测试
基于UML状态图的类测试实例
S2
f
d
g
e
a S1
b
S3
c
状态图
a S1
f
c
S2
② 确定覆盖标准; ③ 利用结构关系图确定待测类的所有关联; ④ 根据程序中类的对象构造测试用例,确认使用什么输入激发类状态的改变
,使用类的服务和期望产生什么行为等; ⑤ 进行集成测试,根据类的层次关系确定测试的先后顺序,尽量使测试用例
能够复用。
63
软件测试
集成测试原则
首先测试公共类 测试仅调用公共类的类 有继承层次关系的先测试父类再测试子类 集成时尽量一次添加一个被测试的类或组件 形成组件的先单独测试组件再集成到子系统
44
软件测试
常用的UML状态图覆盖准则
ZOT循环覆盖 准则
➢ 测试用例集 T应该包含 UML状态图 中的每一个 循环分别执 行0次、1次 、2次的测 试
45
软件测试
常用的UML状态图覆盖准则
全ZOT路径覆盖准则
➢ 当UML状态图中的 每一个循环分别执 行0次、1次、2次 ,而循环外的独立 路径要求至少被访 问一次时,测试用 例集T应该包含UML 状态图中从初始状 态开始到终止状态 结束的全部路径的 测试
64
软件测试
实例:发布新闻
“发布新闻”用例的顺序图
➢ 发布新闻,可上传附件
65
软件测试
实例:发布新闻 集成测试
回顾:面向对象分析 阶段有哪些制品?
30
软件测试
面向对象设计的测试
面向对象设计的测试需要考虑:
➢ 对认定的类的测试 ➢ 对构造的类层次结构的测试 ➢ 对类库的支持的测试
回顾:面向对象设计 阶段有哪些制品?