一、单选题 (题数:30,共 60.0 分)
1
PAD图为( )提供了有力的工具。(2.0分)
- A、测试软件
- B、系统分析
- C、软件设计
- D、自动编码
我的答案:D
2
原型化方法是一种动态定义需求的方法,( )不具有原型化方法的特征。
(2.0分)
- A、加强用户参与和决策
- B、提供严格定义的文档
- C、尽快建立初步需求
- D、简化项目管理
我的答案:B
3
用例图的模型元素不包括( )。(2.0分)
- A、行为者
- B、用例
- C、软件开发者
- D、系统
我的答案:C
4
下面描述中,符合结构化程序设计风格的是( )。(2.0分)
- A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
- B、不使用goto语句
- C、注重提高程序的执行效率
- D、模块只有一个入口,可以有多个出口
我的答案:A
5
描述类中某个对象的行为,反映了状态与事件关系的是( )。(2.0分)
- A、结构图
- B、对象图
- C、数据流图
- D、状态图
我的答案:D
6
软件调试的目的是( )。(2.0分)
- A、发现错误
- B、挖掘软件的潜能
- C、改善软件的性能
- D、改正错误
我的答案:D
7
测试与调试最大的不同在于( )。(2.0分)
- A、使用的工具不同
- B、它们的行为取向不同
- C、操作者的心理状态不同
- D、运用的方法不同
我的答案:C
8
一个成功的测试是( )。(2.0分)
- A、发现至今尚未发现的错误
- B、没有发现错误
- C、发现错误
- D、证明发现不了错误
我的答案:A
9
在进行单元测试时,常用的方法是( )。(2.0分)
- A、[采用白盒测试,辅之以黑盒测试](javascript:void(0)😉
- B、[采用黑盒测试,辅之以白盒测试](javascript:void(0)😉
- C、[只使用黑盒测试](javascript:void(0)😉
- D、[只使用白盒测试](javascript:void(0)😉
我的答案:A
10
不属于详细设计的工具是( )。(2.0分)
- A、[PAD图](javascript:void(0)😉
- B、[PDL](javascript:void(0)😉
- C、[DFD图](javascript:void(0)😉
- D、[N-S图](javascript:void(0)😉
我的答案:C
11
项目开发计划通常不包括( )。
(2.0分)
- A、[项目的验收计划](javascript:void(0)😉
- B、[项目的实施计划](javascript:void(0)😉
- C、[项目的测试计划](javascript:void(0)😉
- D、[项目的资源计划](javascript:void(0)😉
我的答案:B
12
白盒测试方法一般适合于( )测试。(2.0分)
- A、[确认](javascript:void(0)😉
- B、[系统](javascript:void(0)😉
- C、[单元](javascript:void(0)😉
- D、[集成](javascript:void(0)😉
我的答案:C
13
程序的三种基本结构是( )。(2.0分)
- A、[递归、堆栈和队列](javascript:void(0)😉
- B、[调用、返回和转移](javascript:void(0)😉
- C、[过程、子过程和子程序](javascript:void(0)😉
- D、[顺序、选择和重复](javascript:void(0)😉
我的答案:D
14
测试用例是专门为了发现软件错误而设计的一组或多组数据,它由( )组成。(2.0分)
- A、[预期的测试输出数据](javascript:void(0)😉
- B、[测试输入与预期的输出数据](javascript:void(0)😉
- C、[按照测试用例设计方法设计出的数据](javascript:void(0)😉
- D、[测试输入数据](javascript:void(0)😉
我的答案:B
15
不属于白盒测试的技术是( )。(2.0分)
- A、[条件覆盖](javascript:void(0)😉
- B、[语句覆盖](javascript:void(0)😉
- C、[判定覆盖](javascript:void(0)😉
- D、[边界值分析](javascript:void(0)😉
我的答案:D
16
白盒法与黑盒法最大的不同在于( )。(2.0分)
- A、[应用的测试阶段不同](javascript:void(0)😉
- B、[基于的知识集不同](javascript:void(0)😉
- C、[测试用例设计方法不同](javascript:void(0)😉
- D、[测试的任务不同](javascript:void(0)😉
我的答案:C
17
下列逻辑覆盖标准中,查错能力最强的是( )。(2.0分)
- A、[条件覆盖](javascript:void(0)😉
- B、[语句覆盖](javascript:void(0)😉
- C、[判定覆盖](javascript:void(0)😉
- D、[条件组合覆盖](javascript:void(0)😉
我的答案:D
18
进行软件测试的目的是( )。(2.0分)
- A、[缩短软件的开发时间](javascript:void(0)😉
- B、[减少软件的维护成本](javascript:void(0)😉
- C、[尽可能多地找出软件中的错误](javascript:void(0)😉
- D、[证明程序没有缺陷](javascript:void(0)😉
我的答案:C
19
为了提高易读性,源程序内部应加功能性注释,用于说明( )。(2.0分)
-
A、
[模块总的功能](javascript:void(0)😉
-
B、
[模块参数的用途](javascript:void(0)😉
-
C、
[程序段或语句的功能](javascript:void(0)😉
-
D、
[数据的用途](javascript:void(0)😉
我的答案:C
20
检查软件产品是否符合需求定义的过程称为( )。(2.0分)
- A、[验收测试](javascript:void(0)😉
- B、[验证测试](javascript:void(0)😉
- C、[集成测试](javascript:void(0)😉
- D、[确认测试](javascript:void(0)😉
我的答案:D
21
数据结构设计也是概要设计的重要内容,主要是进行数据的( )设计。(2.0分)
- A、[逻辑](javascript:void(0)😉
- B、[用户视图](javascript:void(0)😉
- C、[索引](javascript:void(0)😉
- D、[存取](javascript:void(0)😉
我的答案:A
22
为了提高测试的效率,应该( )。(2.0分)
- A、[取一切可能的输入数据作为测试数据](javascript:void(0)😉
- B、[选择发现错误可能性大的数据作为测试数据](javascript:void(0)😉
- C、[在完成编码以后制定软件的测试计划](javascript:void(0)😉
- D、[随机地选取测试数据](javascript:void(0)😉
我的答案:B
23
功能性注释的主要内容不包括( )。(2.0分)
- A、[语句的功能](javascript:void(0)😉
- B、[程序段的功能](javascript:void(0)😉
- C、[模块的功能](javascript:void(0)😉
- D、[数据的状态](javascript:void(0)😉
我的答案:C
24
软件结构图的形态特征能反映程序重用率的是( )。(2.0分)
- A、[宽度 ](javascript:void(0)😉
- B、[深度 ](javascript:void(0)😉
- C、[扇入](javascript:void(0)😉
- D、[扇出](javascript:void(0)😉
我的答案:C
25
时序图中的要素不包括( )。(2.0分)
- A、[对象生命线](javascript:void(0)😉
- B、[执行者](javascript:void(0)😉
- C、[对象](javascript:void(0)😉
- D、[消息](javascript:void(0)😉
我的答案:B
26
单元测试阶段主要涉及( )的文档。(2.0分)
- A、[概要设计](javascript:void(0)😉
- B、[详细设计](javascript:void(0)😉
- C、[需求设计](javascript:void(0)😉
- D、[编码和详细设计](javascript:void(0)😉
我的答案:D
27
动态建模图包括:时序图、协作图、状态图和( )图(2.0分)
- A、[设计图](javascript:void(0)😉
- B、[对象图](javascript:void(0)😉
- C、[结构图](javascript:void(0)😉
- D、[活动图](javascript:void(0)😉
我的答案:D
28
在数据词典中,以下哪一项表示允许重复0至任意次( )。
(2.0分)
- A、0{}n
- B、{}
- C、{}n
- D、0{}
我的答案:B
29
软件详细设计的主要任务是确定每个模块的( )。(2.0分)
- A、算法和使用的数据结构
- B、程序
- C、外部接口
- D、功能
我的答案:A
30
在黑盒法中,着重检查输入条件组合的测试方法是( )。(2.0分)
- A、错误推测法
- B、等价类划分法
- C、因果图法
- D、边界值分析法
我的答案:C
二、填空题 (题数:8,共 16.0 分)
1
模块内聚程度最强的是()。
(2.0分)
我的答案:
第一空: 功能内聚
2
从技术和管理方面采取多项措施,组织和实施软件工程的最终目的是( )。
(2.0分)
我的答案:
*第一空:*使项目正常运行
3
螺旋模型定义的软件过程有四个步骤,按顺序依次是( )、( )、( )、( )。
(2.0分)
我的答案:
第一空: 制定计划
第二空: 风险分析
第三空: 工程实施
第四空: 客户评估
4
目前通常把软件的生命周期划分为三个时期,即( )、( )和( )。
(2.0分)
我的答案:
第一空: 计划时期
第二空: 开发时期
第三空: 维护时期
5
结构化设计是以()为基础的,按一定的步骤映射为软件结构。
(2.0分)
我的答案:
第一空: 数据流图
6
在结构化系统分析中,判定表和判定树常用于表示数据流图中的( )。
(2.0分)
我的答案:
第一空: 加工
7
用PAD表示的程序从最左边竖线的上端开始,按照 __________ 、 _________ 的顺序执行。
(2.0分)
我的答案:
第一空: 从上往下 第二空:从左往右
8
一个学生成绩统计模块的功能是先对学生各门课成绩进行累加,然后求平均值,则该模块的内聚类型是()。
(2.0分)
我的答案:
第一空: 过程内聚
三、判断题 (题数:15,共 15.0 分)
1
软件系统中所有的信息流都可以认为是变换流。
(1.0分)
我的答案: ×
2
相比硬件而言,软件更容易被修改,而且更容易被正确地进行修改。
(1.0分)
我的答案: ×
3
耦合性也称模块内部各元素之间的联系,指软件系统结构中各元素之间相互联系紧密程度的一种度量。
(1.0分)
我的答案: √
4
在数据代码设计时,应尽量让一个代码代表多个信息。(1.0分)
我的答案: ×
5
软件需求分析阶段要确定软件系统要“做什么”。(1.0分)
我的答案: √
6
集成测试计划是在概要设计阶段制定的。(1.0分)
我的答案: √
7
应选择时间效率和空间效率尽可能高的算法。(1.0分)
我的答案: x
8
数据流必须起于加工且至于加工。
(1.0分)
我的答案: ×
9
耦合性与内聚性是模块独立性的两个定性标准,将软件系统划分模块时,尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。
(1.0分)
我的答案: √
10
白盒测试法是根据程序的功能来设计测试用例的。
(1.0分)
我的答案: ×
11
( )软件需求规格说明书可作为可行性研究的依据。
(1.0分)
我的答案: ×
12
应使用软件维护工具或支撑环境。(1.0分)
我的答案: x
13
用计数方法而不是用文件结束符判别批量数据输入的结束。(1.0分)
我的答案: ×
14
面向对象开发方法的主要缺点是在适应需求变化方面不够灵活。
(1.0分)
我的答案: ×
15
详细设计也称模块设计。
(1.0分)
我的答案: √
四、简答题 (题数:3,共 9.0 分)
1
简述单元测试、集成测试、确认测试、系统测试,这四种测试具体用了什么测试方法。
(3.0分)
我的答案
单元测试:模块接口测试、局部数据结构测试、重要路径测试、错误处理测试、边界测试
集成测试:自顶向下组装测试、自底向上组装测试确认测试:有效性测试、软件配置审查、α测试和β测试、验收测试系统测试:恢复测试、安全测试、强度测试、性能测试、
2
黑盒测试与白盒测试的本质区别是什么?各自适应什么场合?
(3.0分)
我的答案
黑盒测试与白盒测试的本质区别是:设计测试用例的方式不同
白盒测试主要研究软件的功能。黑盒测试主要研究程序源代码和内部的逻辑结构
3
说明测试与调试的区别?
(3.0分)
我的答案
调试的目的是尽可能多地发现程序中的错误,而调试则是指成功的测试之后才开始工作。调试的目的是根据测试时发现的错误,找出错误的原因和具体位置,并改正。因此,调试也称为纠错和排错
测试:目的是发现错误 有计划 以已知的条件开始,使用预先定义的程序,有预知的结果
由独立的测试组,在不了解软件设计的情况下完成
调试:目的是找出错误位置并排错 被动的
以不可知内部条件开始,结果一般不可预见 由程序作者运行,谁开发的程序就由谁来测试