课程链接
课件链接
软件工程单元测试题及答案
文章目录
- 1. 第1周
-
- 1.1. 软件工程的概念
- 1.2. 软件过程
- 2. 第2周
-
- 2.1. 可行性分析任务与过程
- 2.2. 成本效益分析
- 2.3. 需求分析要求1
- 2.4. 需求分析要求2
- 2.5. 获取用户需求的方法
- 2.6. 获取用户需求的方法2
- 2.7. 获取用户需求的方法3
- 3. 第3周
-
- 3.1. 数据流图
- 3.2. 数据流图2
- 3.3. 实体联系图
- 3.4. 实体联系图2
- 4. 第4周
-
- 4.1. 概要设计过程
- 4.2. 模块化
- 4.3. 抽象与信息隐藏
- 4.4. 抽象与信息隐藏2
- 4.5. 模块独立
- 4.6. 模块独立2
- 4.7. 描述软件结构的图形工具
- 5. 第5周
-
- 5.1. 结构化程序
- 5.2. 界面程序设计
- 5.3. 过程设计工具1
- 5.4. 过程设计工具2
- 5.5. 过程设计工具3
- 5.6. 过程设计工具4
- 5.7. 过程设计语言
- 6. 第6周
-
- 6.1. 编码
- 6.2. 编码2
- 6.3. 软件测试的基本概念
- 6.4. 测试用例概述
- 6.5. 软件测试过程
- 6.6. 软件测试方法
- 6.7. 白盒测试
- 6.8. 白盒测试2
- 6.9. 墨盒测试
- 6.10. 墨盒测试2
- 6.11. 软件维护
- 6.12. 软件维护2
- 7. 第7周
-
- 7.1. 面向对象的概念
- 7.2. 面向对象的概念2
- 7.3. 面向对象的概念3
- 7.4. 面向对象的概念4
- 7.5. 面向对象的概念5
- 7.6. UML相关知识
- 7.7. 面向对象建模
- 8. 第8周
-
- 8.1. 动态模型
- 8.2. 功能模型
- 8.3. 功能模型2
- 8.4. 三种模型间的关系
- 9. 第9周
-
- 9.1. 面向对象分析的基本过程
- 9.2. 建立对象模型
- 9.3. 建立对象模型2
- 9.4. 建立对象模型3
- 9.5. 建立对象模型4
- 9.6. 建立对象模型5
- 10. 第10周
-
- 10.1. 建立动态模型
- 10.2. 建立动态模型2
- 10.3. 建立动态模型3
- 10.4. 建立功能模型
- 11. 第11周
-
- 11.1. 面向对象设计的准则
- 11.2. 面向对象设计的准则2
- 11.3. 软件重用和系统分解
- 11.4. 软件重用和系统分解2
- 11.5. 子系统设计
- 11.6. 子系统设计2
- 11.7. 子系统设计3
- 11.8. 子系统设计4
- 11.9. 设计关联和设计优化
- 11.10. 设计关联和设计优化2
- 12. 第12周
-
- 12.1. 面向对象程序设计语言
- 12.2. 面向对象程序设计语言2
- 12.3. 面向对象测试
- 12.4. 面向对象测试2
- 13. 第13周
-
- 13.1. 软件项目管理概述
- 13.2. 估算软件
- 13.3. 人员组织和进度计划
- 13.4. 人员组织和进度计划2
- 13.5. 人员组织和进度计划3
- 13.6. 质量保证
- 13.7. 软件配置管理
1. 第1周
1.1. 软件工程的概念
- 需求分析阶段的任务是确定
A. 软件开发方法
B. 软件开发工具
C. 软件开发费
D.软件系统的功能
正确答案:D - 软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以( )维护所占的维护量最小。
A. 纠错性维护
B. 代码维护
C. 预防性维护
D. 文档维护
正确答案:C - 软件详细设计的基本任务是确定每个模块的
A. 功能
B. 调用关系
C. 算法和数据结构
D. 输入输出数据
正确答案:C - 把模块的控制结构转变成计算机可接受的程序代码的阶段是
A. 详细设计
B. 测试
C. 维护
D. 编码
正确答案:D - 软件概要设计结束后得到
A. DFD
B. 软件结构图
C. 模块详细的算法
D. 程序编码
正确答案:B
1.2. 软件过程
- 瀑布模型的关键不足在于
A. 过于简单
B. 各个阶段需要进行评审
C. 过于灵活
D. 不能适应需求的动态变更
正确答案:D - 快速原型是利用原型辅助软件开发的一种新思想,它是在研究( )的方法和技术中产生的。
A. 需求阶段
B. 设计阶段
C. 测试阶段
D. 软件开发的各个阶段
正确答案:A - 软件开发的增量模型是
A. 适用于需求被清晰定义的情况
B. 一种需要快速构造核心产品的好方法
C. 最适合于大规模团队开发的项目
D. 一种不适用于商业产品的创新模型
正确答案:B - 螺旋模型的特点是下面哪一个br> A. 在软件产品发布时结束
B. 比增量模型更加混乱
C. 在每一次迭代过程中包含项目风险评价
D. 以上所有选项
正确答案:C - 下面的哪个不是RUP模型的阶段br> A. 启动阶段
B. 精化阶段
C. 构造阶段
D. 确认阶段
正确答案:D
2. 第2周
2.1. 可行性分析任务与过程
- 可行性研究阶段的成果形式是
A. 可行性研究 告
B. 用户操作手册
C. 软件问题 告
D. 软件需求分析 告
正确答案:A - 在进行可行性研究的过程中,以下步骤顺序正确的是
①推荐行动方针②研究目前正在使用的系统③导出新系统的高层逻辑模型④进一步定义问题⑤导出和评价供选择的解法⑥复查系统规模和目标⑦草拟开发计划⑧书写文档提交审查
A. ⑥②③④⑤①⑦⑧
B. ①③⑤②⑥④⑦⑧
C. ①⑥②③④⑤⑦⑧
D. ②⑤③④①⑥⑦⑧
正确答案:A - 数据流图和数据字典共同定义了新系统的逻辑模型。
A. checkmark /span>
B. × times ×
正确答案:A - 可行性研究可行性研究需要的时间长短和所研究系统的规模关系不大。
A. checkmark /span>
B. × times ×
正确答案:B - 把可行性研究各个步骤的工作结果写成清晰的文档,请用户、客户组织的负责人及评审组审查,以决定是否继续这项工程及是否接受分析员推荐的方案。
A. checkmark /span>
B. × times ×
正确答案:A
2.2. 成本效益分析
- 在进行成本/效益分析的时候,需要考虑
A. 运行费用
B. 开发成本
C. 系统使用寿命
D. 系统带来的经济效益
正确答案:A、B、C、D
2.3. 需求分析要求1
- 在综合需求分析中,描述应用系统与它的环境通信的格式的需求是
A. 约束
B. 逆向需求
C. 接口需求
D. 性能需求
正确答案:C - 分析系统的数据要求通常采用建立下面哪种方法。
A. 信息处理
B. 数据模型
C. 数据处理
D. 数据操作
正确答案:B
2.4. 需求分析要求2
- 需求分析的任务是借助于当前系统的物理模型导出目标系统的逻辑模型,解决目标系统”做什么”的问题。 下列哪一项并不是需求分析的实现步骤之一。
A. 获得当前系统的物理模型
B. 抽象出当前系统的逻辑模型
C. 建立目标系统的逻辑模型
D. 建立目标系统的物理模型
正确答案:D
2.5. 获取用户需求的方法
- 下列哪一项不是用来获取用户需求的。
A. 发放调查问卷
B. 与业务人员进行访谈
C. 绘制数据流图
D. 绘制时序图
正确答案:D
2.6. 获取用户需求的方法2
- 原型法获取用户需求适合下列哪种情况
A. 天气预 系统
B. 大数据分析系统
C. 科学计算系统
D. 图书馆WEB 站开发
正确答案:D
2.7. 获取用户需求的方法3
- 需求分析过程应该建立3种模型不包括
A. 需求分析过程应该建立3种模型不包括
B. 功能模型
C. 用例模型
D. 行为模型
正确答案:C
3. 第3周
3.1. 数据流图
- 数据流图的四个基本符 是下列哪一组。
A. 数据源点,数据终点,处理,数据存储
B. 数据源点,处理,数据存储,数据流
C. 外部实体,处理,数据终点,数据流
D. 外部实体,数据存储,处理,数据流
正确答案:D - 下列哪一项的作用是”用来明确系统和环境的界限”的br> A. 数据源点
B. 数据存储
C. 外部实体
D. 数据终点
正确答案:C
3.2. 数据流图2
- 在下列的基本成分中,哪个不是数据流程图的基本成分br> A. 信息处理
B. 信息存储
C. 外部实体
D. 系统状态
正确答案:D - 数据流图的用途不包括以下哪几项br> A. 数据流图的用途不包括以下哪几项br> B. 作为建立系统功能模型的工具
C. 作为详细设计的工具
D. 作为分析和设计的工具
正确答案:A、B、D - 画分层DFD图的基本原则包括下列哪些选项br> A. 加工分解的原则
B. 数据守恒原则
C. 数据封闭原则
D. 父图与子图”平衡”原则
正确答案:A、B、C、D
3.3. 实体联系图
- 在实体联系图中,用椭圆形或圆角矩形表示
A. 实体
B. 属性
C. 联系
D. 重数关系
正确答案:B - 在实体联系图中,下列说法错误的是
A. 实体可以有属性,也可以没有属性。
B. 联系也可能有属性。
C. 属性定义了数据对象的性质。
D. 数据对象彼此间是有关联的。
正确答案:A
3.4. 实体联系图2
- 在下列的范式中,哪个消除了对主键的传递依赖br> A. 第一范式
B. 第二范式
C. 第三范式
D. 第四范式
正确答案:C - 在下列的范式中,哪个消除了对主键的部分依赖br> A. 第一范式
B. 第二范式
C. 第三范式
D. 第四范式
正确答案:B
4. 第4周
4.1. 概要设计过程
- 以下哪个选项的内容可以描述概要设计的目的。( )
A. 实现功能所需的具体方法函数
B. 描述系统的实现方式
C. 整体划分功能模块
D. 各模块详细说明
正确答案:C - 软件结构设计的任务包括以下哪些选项( )
A. 将系统划分成模块
B. 决定每个模块的功能
C. 决定模块间的调用关系
D. 决定模块之间的接口
正确答案:A、B、C、D
4.2. 模块化
- 模块具有3个基本属性( )
A. 状态
B. 功能
C. 方法
D. 逻辑
正确答案:A、B、D - 采用模块化的优点包括以下哪些选项)
A. 使软件结构清晰
B. 减少代码编写量
C. 提高软件的可修改性
D. 有助于软件开发工程的组织管理
正确答案:A、C、D
4.3. 抽象与信息隐藏
- 在软件结构中,下列哪个选项用来完成对数据的一个具体处理。( )
A. 顶层模块
B. 中间模块
C. 协调模块
D. 底层模块
正确答案:D - 总体设计阶段把系统抽象为( )
A. 功能
B. 模块的处理过程
C. 结构
D. 程序
正确答案:C
4.4. 抽象与信息隐藏2
- 信息隐藏和局部化的好处是( )
A. 多人分别编写系统的不同模块,可以根据需要自由命名局部变量
B. 防止把一个模块的错误扩散到其他模块
C. 一个模块内包含的信息对于不需要这些信息的模块来说,也可访问
D. 保证块独立性
正确答案:A、B、D - 信息隐藏指的是一个模块内包含的信息(过程和数据) 对于不需要这些信息的模块来说,是不能访问的(隐藏)。
A. checkmark /span>
B. × times ×
正确答案:A - 局部化与信息隐藏是相互独立的。
A. checkmark /span>
B. × times ×
正确答案:B
4.5. 模块独立
- 耦合度也可以分为七级:其中最松散的耦合是( )。
A. 非直接耦合
B. 数据耦合
C. 特征耦合
D. 控制耦合
正确答案:A - 数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( )
A. 数据、公共、标记、控制
B. 数据、标记、控制、公共
C. 控制、数据、标记、公共
D. 控制、数据、公共、标记
正确答案:B - 为了提高模块的独立性,模块之间最好是( )
A. 控制耦合
B. 公共耦合
C. 内容耦合
D. 数据耦合
正确答案:D
4.6. 模块独立2
- 下列模块内聚中,内聚性最强的是( )。
A. 功能内聚
B. 偶然内聚
C. 过程内聚
D. 顺序内聚
正确答案:A - 通信内聚、过程内聚、顺序内聚和时间内聚的内聚性从高到低顺序是( )
A. 通信、过程、顺序、时间
B. 通信、时间、顺序、过程
C. 顺序、通信、时间、过程
D. 顺序、通信、过程、时间
正确答案:D - 一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是( )
A. 通信内聚
B. 顺序内聚
C. 偶然内聚
D. 功能内聚
正确答案:B
4.7. 描述软件结构的图形工具
- 下列关于层次图和结构图的说法,正确的是( )
A. 层次图和结构图并不严格表示模块的调用次序
B. 层次图和结构图只表明一个模块调用那些模块
C. 层次图既能表示模块间的数据信息、控制信息,也能表示选择调用和循环调用关系
D. 在结构图中通常还用带注释的箭头表示模块调用过程中来回传递的信息
正确答案:A、B、D - 在描述系统结构的图形工具中使用带注释的箭头表示模块调用过程中来回传递的信息。下列说法正确的是( )
A. 空心圆表示传递的是数据
B. 实心圆表示传递的是数据
C. 空心圆表示传递的是控制信息
D. 实心圆表示传递的是控制信息
正确答案:A、D
5. 第5周
5.1. 结构化程序
- 扩展的结构程序设计中,不允许使用( )
A. BREAK结构
B. IF-THEN-ELSE型分支
C. WHILE型循环
D. UNTIL型循环
正确答案:A - 经典的结构程序设计中,只能有以下哪些结构存在( )
A. 顺序
B. 分支
C. WHILE型循环
D. UNTIL型循环
正确答案:A、B、C
5.2. 界面程序设计
- 程序流程图的优点是( )
A. 不易表示数据结构。
B. 随意转移控制。
C. 本质上不是逐步求精的好工具
D. 对控制流程的描绘很直观
正确答案:D - 程序流程图必须有一个入口和一个出口。
A. checkmark /span>
B. × times ×
正确答案:B - 用户进行数据输入时,尽量减少用户的输入动作。
A. checkmark /span>
B. × times ×
正确答案:A - 用户与系统进行交互操作时,系统应尽量减少用户的记忆量。
A. checkmark /span>
B. × times ×
正确答案:A
5.3. 过程设计工具1
- 下列说法不正确的是( )
A. 流程图既可以表示二分支结构,又可以表示多分支结构
B. 流程图既可以表示while循环,也可以表示until循环
C. 流程图不可以随意转移控制
D. 流程图不易表示数据结构
正确答案:C - 流程图中的菱形表示( )
A. 输入输出
B. 开始
C. 处理
D. 分支
正确答案:D
5.4. 过程设计工具2
- 下列关于盒图的说法,不正确的是( )
A. 不可任意转移控制
B. 容易表现嵌套关系
C. 很容易确定局部和全程数据的作用域
D. 不可表示模块的层次结构
正确答案:D
5.5. 过程设计工具3
关于PAD图,以下哪个说法是错误的( )
A. 使用PAD符 所设计出来的程序必然是结构化程序
B. 可用于表示程序逻辑,但不可用于描绘数据结构
C. PAD图所描绘的程序结构十分清晰;
D. 容易将PAD图转换成高级语言源程序。
正确答案:B
5.6. 过程设计工具4
- 判定表由四部分组成,左上部列出的是下列哪一项( )
A. 条件组合与动作之间的对应关系
B. 所有条件
C. 所有可能的动作
D. 可能的条件组合
正确答案:B
5.7. 过程设计语言
- 下列哪个是伪码的缺点( )
A. 不如图形工具形象直观
B. 可以嵌入在源程序中一起作为程序文档
C. 描述复杂的条件组合与动作间的对应关系时,不如判定表清晰简单。
D. 可自动生成程序代码
正确答案:A、C
6. 第6周
6.1. 编码
- 选择编程语言只需求考虑用户的要求。()
A. checkmark /span>
B. × times ×
正确答案:B - 开发系统软件时,常用的高级语言是________。
正确答案:C语言
6.2. 编码2
- 对建立良好的程序设计风格,下面描述正确的是()。
A. 程序应简单、清晰、可读性好
B. 只要符 名的命名符合语法
C. 充分考虑程序的执行效率,越高越好
D. 程序的注释可有可无
正确答案:A - 标识符的命名应该采用有实际意义的名字。( )
A. checkmark /span>
B. × times ×
正确答案:A - 在正规的程序文件中,注释行的数量占整个源程序的1/5到1/3,甚至更多。( )
A. checkmark /span>
B. × times ×
正确答案:A
6.3. 软件测试的基本概念
- 一个成功的测试是___________。
A. 发现错误码
B. 发现了至今尚未发现的错误
C. 没有发现错误码
D. 证明发现不了错误
正确答案:B - 软件测试是为发现程序中的______________而执行程序的______________。
正确答案:错误,过程
6.4. 测试用例概述
-
以程序的内部结构为基础的测试用例技术属于( )。
A. 灰盒测试
B. 数据测试
C. 黑盒测试
D. 白盒测试
正确答案:D -
软件测试是采用( )执行软件的活动。
A. 测试用例
B. 输入数据
C. 测试环境
D. 输入条件
正确答案:A -
测试用例是由______________和预期的______________两部分组成。
正确答案:测试输入数据 ,输出数据 -
设计测试用例时应该考虑到合法的输入和________输入以及各种边界条件。
正确答案:不合法的
6.5. 软件测试过程
- ___________的目的是对最终软件系统进行全面的测试确保最终软件系统产品满足需求。( )
A. 系统测试
B. 集成测试
C. 单元测试
D. 功能测试
正确答案:A - 单元测试是以____________说明书为指导,测试源程序代码。
正确答案:详细设计 - 集成测试以____________说明书指导,测试软件结构。
正确答案:概要设计 - 验收测试以____________说明书为指导。
正确答案:需求分析
6.6. 软件测试方法
- 代码会审属于____________,不实际运行程序。
正确答案:静态测试 - 黑盒测试又称之为___________测试,只依据程序的功能来设计测试用例。
正确答案:功能 - 白盒测试又称为______________测试,以程序内部逻辑结构为基础设计测试用例。
正确答案:结构
6.7. 白盒测试
- 有一组测试用例使得每一个被测试用例的条件至少被执行一次,它满足的覆盖标准()。
A. 语句覆盖
B. 判定覆盖
C. 条件覆盖
D. 路径覆盖 - 判定覆盖设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支______被执行一次。
正确答案:至少 - 根据覆盖目标的不同,逻辑覆盖又可分为:,,____________,判断/条件覆盖,条件组合覆盖。
正确答案:语句覆盖,判定覆盖,条件覆盖
6.8. 白盒测试2
- 一个程序中所含有的路径数与____有着直接的关系。
A. 程序的复杂程度
B. 程序语句行数
C. 程序模块数
D. 程序指令执行时间 - 路径测试中的点覆盖,等价于逻辑覆盖中的( )
A. 语句覆盖
B. 判定覆盖
C. 条件组合覆盖
D. 条件覆盖
6.9. 墨盒测试
- 测试程序时,不可能遍历所有可能的输入数据,而只能是选择一个子集进行测试,那么最好的选择方法是( )。
A. 随机选择
B. 划分等价类
C. 根据接口进行选择
D. 根据数据大小进行选择 - 等价类测试技术具备完备性和无冗余性。( )
A. checkmark /span>
B. × times × - 等价类划分有两种不同的情况:和。
正确答案:有效等价类,无效等价类 - 等价类的基本思想是:将所有可能的输入数据划分成若干个等价类,然后从每一类中选取________________的数据作为测试用例。
正确答案:少数有代表性
6.10. 墨盒测试2
- 不属于白盒测试的技术是 ( ) 。
A. 语句覆盖
B. 判定覆盖
C. 边界值分析
D. 基本路径测试 - 在边界值分析中,下列数据通常不用来做数据测试的是( )。
A. 正好等于边界的值
B. 等价类中的等价值
C. 刚刚大于边界的值
D. 刚刚小于边界的值 - 边界值分析法属于____________。
正确答案:黑盒测试
6.11. 软件维护
- 下列属于维护阶段的文档是( )
A. 软件规格说明
B. 用户操作手册
C. 软件问题 告
D. 软件测试分析 告 - 下列维护类型中,在所有维护中占比最大的是( )
A. 改正性维护
B. 完善性维护
C. 适应性维护
D. 其他维护
6.12. 软件维护2
- 维护要求首先被反映给以下哪个角色)
A. 维护管理员
B. 系统管理员
C. 变化授权人
D. 维护实施人员 - 以下关于维护事件流的说法中,不正确的是哪项)
A. 改正性维护从评价错误严重程度开始
B. 适应性维护和改正性维护具有相同的事件流
C. 严重的改正性维护要立即开展维护工作
D. 维护过程不包括测试
7. 第7周
7.1. 面向对象的概念
- 对象的静态特征是( )
A. 方法
B. 属性
C. 关系
D. 操作 - 对象的动态特征是( )
A. 特征
B. 属性
C. 关系
D. 操作 - 对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。
A. 结合
B. 隐藏
C. 封装
D. 抽象 - 面向对象(Object Oriented)方法是将现实世界的事物以对象的方式( )到计算机世界的方法。
A. 对应
B. 映射
C. 反映
D. 反射
7.2. 面向对象的概念2
- 在UML中,类是用 ( )表示的
A. 矩形框
B. 椭圆
C. 箭头
D. 菱形框 - 属于某个类的一个具体对象称为该类的( )。
A. 虚拟
B. 实例
C. 继承
D. 多态 - 框架是一组可用于不同应用的( )集合
A. 模块
B. 对象
C. 类
D. 代码
7.3. 面向对象的概念3
- 下面关于面向对象方法中消息的叙述,不正确的是( )。
A. 键盘、鼠标、通信端口、 络等设备一有变化,就会产生消息
B. 操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息
C. 应用程序之间可以相互发送消息
D. 发送与接收消息的通信机制与传统的子程序调用机制不同 - 一个对象和另一个对象之间,通过消息来进行通信。消息通信在面向对象的语言中即( )。
A. 方法实现
B. 方法嵌套
C. 方法调用
D. 方法定义 - UML的( )表示消息源发出消息后不必等待消息处理过程的返回,即可继续执行自己的后续操作。
A. 简单消息
B. 返回消息
C. 同步消息
D. 异步消息
7.4. 面向对象的概念4
- ( )是子对象或者子类自动共享父对象或者父类数据结构和方法的机制。
A. 封装
B. 抽象
C. 继承
D. 信息隐藏 - 在有多重继承的类层次结构中,类层次结构是( )。
A. 树型层次结构
B. 状型层次结构
C. 星型层次结构
D. 环型层次结构 - 反映了类间的一种层次关系的是( )。
A. 继承
B. 组合
C. 封装
D. 多态
7.5. 面向对象的概念5
- 软件部件的内部实现与外部可访问性的分离,是指软件的( )
A. 继承性
B. 共享性
C. 封装性
D. 抽象性 - 面向对象的主要特征除对象惟一性、封装、继承外,还有( )
A. 多态性
B. 完整性
C. 可移植
D. 兼容性 - ( )意味着一个操作在不同的类中可以有不同的实现方式。
A. 多继承
B. 多态性
C. 类的可复用
D. 信息隐蔽
7.6. UML相关知识
- 在UML中,协作图反映收发消息的对象的结构组织,它与( )是同构的。
A. 用例图
B. 时序图
C. 活动图
D. 类图 - UML是一种 ( )
A. 建模工具
B. 可视化的程序设计声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!