软件工程期末试题及答案六(2)

时间:2017-04-24 17:21:28 软件工程 我要投稿

软件工程期末试题及答案(六)

  软件工程期末试题: 简答题

  1.为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网?

  2.软件测试的目的是什么?为什么把软件测试的目的定义为只是发现错误?

  3.软件测试应当遵循什么原则?为什么要遵循这些原则?

  4.软件测试的步骤是什么?这些测试与软件开发各阶段之间的关系?

  5.软件测试的过程是什么?

  6.单元测试、集成测试和确认测试各自主要目标是什么?它们之间有什么不同?相互有什么关系?

  7.什么是黑盒测试与白盒测试?它们都适应哪些测试?

  8.简述软件测试与软件调试的区别。

  9.软件配置管理的任务。

  10.试述第三代界面的优点。

  11.试述人机界面的设计过程。

  软件工程期末试题及答案: 综合题

  1.变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字母可以英文字母、数字以及下划线的任意组合。请用等价分类法设计测试用例。

  2.某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例。

  3.下面是某程序的流程图:

  (1)计算它的环路复杂性。

  (2)为了完成基本路径测试,求它的一组独立的路径。

  软件工程期末试题及答案

  选择题

  1.B 2.B 3.C 4.D 5.A 6.B 7.C 8.B 9.D 10.D

  11.A 12.B 13.D 14.A 15.A 16.A 17.B 18.D 19.A 20.D

  21.C 22.D 23.A 24.C 25.D 26.A 27.D 28.D 29.B 30.B

  31.C 32.A 33.D 34.B 35.C 36.B 37.B 38.A 39.D 40.D

  填空题

  1. 错误 测试结果

  2. 文档资料 内部结构 测试用例 程序 错误 缺陷

  3. 输入数据 输出数据

  4. 动态测试 静态测试

  5. 运行程序 测试用例 黑盒测试 白盒测试

  6. 人工检测 计算机辅助静态分析

  7. 编码质量 编码 软件产品

  8. 静态分析 特性

  9. 接口 需求规格 功能

  10. 内部结构 处理过程 处理过程 测试

  11. 结构 源程序 内部逻辑

  12. 判定 语句覆盖 判定覆盖 条件覆盖 判定/条件覆盖 条件组合覆盖 路径覆盖

  13. 条件组合 路径

  14. 循环 循环次数

  15. 控制流程图 环路 基本路径

  16. 功能 等价类划分 边界值分析 错误推测 因果图

  17. 功能 一句话 一个短语 等价类

  18. 边界 边界值 第一个 最后一个

  19. 错误推测法

  20. 因果 功能说明 判定表 判定表

  21. 测试 黑盒 白盒

  22. 软件配置 测试配置 测试工具

  23. 单元测试 集成测试 确认测试 系统测试

  24. 单元测试 编码 详细设计

  25. 模块 模块接口 局部数据结构 重要的执行路径 错误处理 边界条件

  26. 驱动 桩 驱动模块 桩模块

  27. 单元 组装 联合

  28. 非渐增式测试 渐增式测试

  29. 自顶向下结合 自底向上结合

  30. 驱动 桩 顶层 软件结构图 深度优先策略 宽度优先策略

  31. 桩 驱动

  32. 功能 性能 需求规格 有效性

  33. 黑盒 专门测试人员 用户

  34. 测试 测试分析 实际运用

  35. 完整性 正确性

  36. 纠错 原因 位置

  37. 简单调试 归纳法调试 演绎法调试 回溯法调试

  38. 程序产生错误的地方 测试结果发现的线索

  39.静态

  40.尽可能多的

  41.一个

  42.驱动模块与桩模块

  43.渐增式和非渐增式

  44.发现错误

  45.动态测试

  46.黑盒法

  47.判定覆盖

  48.循环次数

  49.两个不合理的等价类

  50.错误推测法

  51.渐增式和非渐增式测试方法

  52.进行确认测试和软件配置审查

  53.驱动模块和桩模块

  54.标识变更 控制变更 确保变更正确地实现 报告有关变更

  55.变更

  56.检查点

  名词解释

  1. 软件测试指为了发现软件中的错误而执行软件的过程。它的目标是尽可能多地发现软件中存在的错误,将测试结果作为纠错的依据。

  2. 静态测试指被测试的程序不在机器上运行,而是采用人工检测和计算机辅助静态分析的手段对程序进行检测。

  3. 动态测试指通过运行程序发现错误。

  4. 黑盒测试指把测试对象看成一个黑盒子,测试人员完全不考虑程序的内部结构和处理过程,只在软件的接口处进行测试,依据需求规格说明书,检查程序是否满足功能要求,又称为功能测试或数据驱动测试。

  5. 白盒测试指把测试对象看成一个打开的盒子,测试人员需了解程序的内部结构和处理过程,以检查处理过程的细节为基础,对程序中尽可能多的逻辑路径进行测试,检验内部控制结构和数据结构是否有错,实际的运行状态与预期的状态是否一致。

  6. 语句覆盖指设计足够的测试用例,使被测程序中每个语句至少执行一次。

  7. 判定覆盖指设计足够的测试用例,使被测程序中每个判定表达式至少获得一次“真”值或“假”值,从而使程序的每个分支至少都通过一次,因此判定覆盖又称分支覆盖。

  8. 条件覆盖指设计足够测试用例,使判定表达式中每个条件的各种可能的值至少出现一次。

  9. 判定/条件覆盖指设计足够的测试用例,使得判定表达式中每个条件的所有可能取值至少出现一次,并使每个判定表达式所有可能的结果也至少出现一次。

  10. 条件组合覆盖指设计足够的测试用例,使得每个判定表达式中条件的各种可能的值的组合都至少出现一次。

  11. 路径覆盖指设计足够的测试用例,覆盖被测程序中所有可能的路径。

  12. 测试用例指为寻找程序中的错误而精心设计的一组测试数据。

  13. 驱动模块指用来模拟被测模块的上级调用模块,其功能比真正的上级模块简单得多,它只完成接受测试数据,以上级模块调用被测模块的格式驱动被测模块,接收被测模块的测试结果并输出。

  14. 桩模块指用来代替被测试模块所调用的模块,其作用是返回被测试模块所需的信息。

  15. 单元测试指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误。

  16. 集成测试指在单元测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。也称组装测试或联合测试。

  17. 确认测试指检查软件的功能与性能是否与需求规格说明书中确定的指标相符合,又称有效性测试。

  18. 渐增式测试指逐个把未经过测试的模块组装到已经过测试的模块上去,进行集成测试。每加入一个新模块进行一次集成测试,重复此过程直到程序组装完毕。

  19. 非渐增式测试指首先对每个模块分别进行单元测试,然后把所有的模块按设计要求组装在一起进行测试。

  20. 调试指确定错误的原因和位置,并改正错误的过程,也称纠错。

  21. 1)人对感知过程的认识,包括视觉、阅读时的认知心理、记忆、归纳与演绎推理等;

  2)用户已有的技能和行为方式;

  3)用户所要求的完成的整个任务以及用户对人机交互部分的特殊要求。

  22. 已经通过正式复审和批准的某规约或产品,它因此可以作为进一步开发的基础,并且只能遵循正式的变化控制过程得到改变。

  23. 软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更、控制变更、确保变更正确地实现、报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。

  24. 软件配置项是软件工程中产生的信息项,它是配置管理的基本单位,对已成为基线的SCI,虽然可以修改,但必须按照一个特殊的正确的过程进行评估,确认每一处的修改。

  简答题

  1. ① 软件测试是软件开发中不可缺少的重要一环,原因是:

  · 测试的工作量约占整个项目开发工作量的40%左右,几乎一半。如果是关系到人的生命安全的软件,测试的工作量还要成倍增加。

  · 软件测试代表了需求分析、设计、编码的最终复审。

  ② 软件测试不是软件质量保证的安全网,因为软件测试只能发现错误,不能保证没有错误。

  2. 软件测试的目的有:

  ① 软件测试是为了发现错误而执行程序的过程。

  ② 一个好的测试用例能够发现至今尚未发现的错误。

  ③ 一个成功的测试是发现了至今尚未发现的错误。

  软件测试的目标定义为只是发现错误,原因是软件测试可以有两个目标,一个是预防错误,另一个是发现错误。由于软件开发是人的创造性劳动,人的活动不可能完美无缺,错误可能发生在任何一个阶段,因此预防错误这一目标几乎是不可实现的,所以软件测试的目标定义为只是发现错误。

  3. 软件测试应当遵循原则如下:

  ① 用例由输入数据和预期的输出数据两部分组成,因为这样便于对照检查,做到有的放矢。

  ② 用例不仅选用合理的输入数据,还要选择不合理的输入数据。因为当以特殊方式使用程序时,会突然发现程序中有许多错误,故使用预期的不合理的输入数据进行程序测试,比用合理的输入数据收获要大,从而能更多地发现错误,提高程序可靠性。

  ③ 除了检查程序是否做了它应该做的事,还应该检查程序是否做了它不应该做的事,因为如果程序做了它不应该做的事,即使程序能做它应该做的事,程序也是错误的。

  ④ 应制定测试计划并严格执行,因为这样可以排除随意性。


【软件工程期末试题及答案(六)】相关文章:

1.软件工程期末试题及答案

2.软件工程期末试题及答案(四)

3.软件工程试题及答案

4.软件工程基础试题及答案

5.软件工程模拟试题及答案(一)

6.教学设计期末试题及答案

7.《特种结构》期末试题及答案

8.大学英语期末试题及答案