试比较面向对象单元测试与传统结构化单元测试的异同。

题目

试比较面向对象单元测试与传统结构化单元测试的异同。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列关于面向对象程序的测试组织问题的说法中,正确的是 ______。

A.在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试三个主要方面

B.在面向对象程序中的一个类可以作为被独立测试的单元

C.在面向对象程序测试中,很容易对一个类中的单个成员方法进行充分的单元测试

D.由于集成测试目标相同,结构化程序的集成测试技术都适用于对类的测试


正确答案:A
解析:在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试三个主要方面。其中单元测试的基本要求是被测单元被独立地测试,而在测试面向对象程序时,由于一个类的各个成员方法通常是相互联系的,因而很难对一个类中的单个成员方法进行充分的单元测试。面向对象程序中的一个类甚至也不能作为被独立测试的单元,主要原因一方面是由于继承的存在,一个类通常依赖于其父类和其他祖先类,另一方面由于面向对象程序经常出现多个类相互依赖也会导致每个类难以被独立的测试。集成测试是针对程序的集成结构进行,在面向对象程序中,许多集成机制在传统结构化程序中没有,因而结构化程序的集成测试技术难以适用于对类的测试。

第2题:

在面向对象软件测试中,下面测试策略是从用户的角度出发进行的是______。

A.面向对象软件的单元测试

B.面向对象软件的集成测试

C.面向对象软件的人工测试

D.面向对象软件的确认测试


正确答案:D

第3题:

以下关于面向对象程序单元测试的说法中,正确的是

A) 只要对类的每个成员方法都进行了测试就可完成对该类的单元测试

B) 不需要对抽象类进行单元测试

C) 基于判定表的测试可以用于面向对象程序的单元测试

D) 不变式边界测试是一种针对类树多态性的测试技术

A.

B.

C.

D.


正确答案:D

第4题:

分析比较面向对象的软件测试与传统的软件测试的异同。


正确答案:传统的单元测试的对象是软件设计的最小单位——模块。当考虑面向对象软件时,单元的概念发生了变化,此时最小的可测试单位是封装的类或对象,而不再是个体的模块。传统单元测试主要关注模块的算法实现和模块接口间数据的传递,而面向对象的单元测试主要考察封装在一个类中的方法和类的状态行为。
面向对象软件没有层次的控制结构,因此传统的自顶向下和自底向上集成策略就不再适合,它主要有以下两种集成策略:基于类间协作关系的横向测试;基于类间继承关系的纵向测试。系统测试一般不考虑内部结构和中间结果,因此面向对象软件系统测试与传统的系统测试差别不大。
面向对象软件测试的整体目标和传统软件测试的目标是一致的即以最小的工作量发现尽可能多的错误,但是面向对象测试的策略和战术有很大不同。测试的视角扩大到包括复审分析和设计模型,此外,测试的焦点从过程构件(模块)移向了类。

第5题:

在面向对象软件测试模型中,面向对象编程的测试可以细分为______。

A.单元测试和集成测试

B.单元测试和系统测试

C.单元测试、集成测试和系统测试

D.系统测试和验收测试


正确答案:A

第6题:

关于面向对象软件单元测试的说法,错误的是______。

A) 面向对象软件中可独立被测试的单元通常是一个类族

B) 面向对象软件中可独立被测试的单元也可能是一个独立的类

C) 面向对象的单元测试分为方法层次、类层次和类树层次的测试

D) 面向对象的单元测试与面向过程的单元测试目的相同

A.

B.

C.

D.


正确答案:D
解析:A、B、C选项中关于面向对象软件单元测试的陈述都是正确的,面向对象软件的测试主要包括两方面的内容,检查分析结果是否符合相应面向对象分析方法的要求;检查分析结果是否可以满足软件要求。与面向过程的测试有着不同的测试目的。

第7题:

比较传统的软件单元测试与面向对象软件的单元测试的内容,下列说法错误的是______。

A) 传统的软件单元测试的对象是软件设计的最小单位——模块,测试依据是详细设计说明书

B) 单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误

C) 面向对象软件很难对单个成员方法进行充分的测试,具有良好封装性的类称为单元测试的基本对象

D) 面向对象软件的测试大多采用白盒测试技术,系统内多个模块可以并行的进行测试

A.

B.

C.

D.


正确答案:D
解析:A、B选项关于传统的软件单元测试的描述都是正确的,C选项关于面向对象软件单元测试的描述也是正确的。D选项描述的内容不是面向对象软件测试的内容,而是传统的软件设计的单元测试的内容。所以不要产生混淆。

第8题:

以下关于面向对象软件测试的说法中,正确的是

A) 单个成员方法的测试不属于面向对象单元测试考虑的范畴

B) 等价类划分测试只适用于传统软件的测试,不适用于面向对象软件的测试

C) 基于判定表的测试适用于面向对象软件的测试

D) 抽象类无法进行单元测试

A.

B.

C.

D.


正确答案:D

第9题:

简述结构化设计与面向对象设计对处理过程描述的异同。


正确答案: 在结构化系统设计方式中,处理程序的设计需要详细描述各种处理所用的算法和处理步骤等。
在面向对象的设计方法中,处理程序主要描述系统中各对象的方法,及其对外部事件的响应和行为。

第10题:

测试面向对象软件时,单元测试、集成测试和确认测试各有哪些新特点?


正确答案: 单元测试是在类层面上的测试。由于继承和复合,类(或对象)在很多情况下已不再是单纯意义上的单个操作了。因此,具体的测试将在所有与该操作有关的每个子类语境中进行。
集成测试由于面向对象软件中类的成分的直接和间接交互,使得传统测试方法已经失去意义。因此有两种策略可供选择:基于线程的测试和基于使用的测试。
确认测试与传统确认测试一样,仍然关注于用户可见的动作和用户可识别的系统输出,但是,基于场景的测试总是主宰面向对象系统的确认测试。