16. 从是否需要执行被测软件的角度,软件测试技术可划分的类型是:(AC )。 A、 静态测试 B、 黑盒测试 C、 动态测试 D、 白盒测试
17. 从测试阶段角度,测试结束的正确顺序是:( B )
A、 单元测试、集成测试、系统测试、确认测试 B、 单元测试、系统测试、集成测试、确
认测试C、 确认测试、集成测试、系统测试、单元测试 D、 确认测试、系统测试、集成测试、单元测试
18. 软件的六大质量特性包括: ( A )
A. 功能性、可靠性、可用性、效率、可维护、可移植 B. 功能性、可靠性、可用性、效率、稳定性、可移植 C. 功能性、可靠性、可扩展性、效率、稳定性、可移植 D. 功能性、可靠性、兼容性、效率、稳定性、可移植
19. 以下测试方法是白盒测试方法的是 __CD____
A. 判定覆盖和边界值分析法 B. 等价划分和错误推测法
C. 路径覆盖和判定/条件覆盖法 D. 条件组合覆盖和语句覆盖法 E. 条件覆盖和错误推测法
20. 以下属于黑盒测试方法的有__ABCDE____
A. 等价类划分 B. 边界值分析 C. 错误推测 D. 因果图 E. 决策表
21. 下列哪些属于软件测试阶段的交付成果物 ABC
A. 测试计划 B. 测试用例 C. 测试报告D. 用户手册 E. 安装部署手册
22. 以下哪些过程能够提高软件质量? BD A. 可行性分析 B. 需求评审 C. 测试 E. 概要设计 D. 代码走查 三、 填空题
1. 软件测试主要分为___单元测试_、_集成测试__、___系统测试___、___验收测试___四类测试。
2. 软件缺陷产生的原因包括__编写代码___、设计、_编写需求__以及其他原因。
3. 对面向过程的系统采用的集成策略有 自顶向下集成 、 自底向上集成 两种。
4. 黑盒测试用例设计方法包括 等价类划分、边界值分析 以及 因果图 ,错误推测法等。 5. 测试工作就是进行输入、接受输出、检验结果,不深入代码细节,这样的测试方法称为___黑盒测试__。
6. 软件测试的目的是尽可能多地发现软件中存在的 错误 ,将测试 测试结果 作为纠错的依据。
7. 软件测试方法一般分为两大类: 动态测试 方法和 静态测试 方法。
8. 动态测试通过 运行程序 发现错误。根据 测试用例 的设计方法不同,动态测试又分为 黑盒测试 与 白盒测试 两类。
9. 黑盒法只在软件的 接口 处进行测试,依据 需求规格 说明书,检查程序是否满足 功能 要求。
10. 白盒法必须考虑程序的 内部结构 和 处理过程 ,以检查 处理过程 的细节为基础,对程序中尽可能多的逻辑路径进行 测试 。
11. 逻辑覆盖是对程序内部有 判定 存在的逻辑结构设计测试用例,根据程序内部的逻辑覆盖程度又可分为 语句覆盖 判定覆盖 条件覆盖 判定/条件覆盖 条件组合覆盖 路径覆盖6种覆盖技术。
12. 等价类划分从程序的 功能 说明,找出一个输入条件(通常是 一句话 或 一个短语 ),然后将每个输入条件划分成两个或多个 等价类 。
13. 边界值分析是将测试 边界 情况作为重点目标,选取正好等于、刚刚大于或刚刚小于边界值的测试数据。如果输入或输出域是一个有序集合,则应选取集合的 第一个 元素和 最后一个 元素作为测试用例。
14. 测试的综合策略是在测试中,联合使用各种 测试 方法。通常先用 黑盒 法设计基本的测试用例,再用 白盒 法补充一些必要的测试用例。
15. 软件测试过程中需要3类信息:软件配置 、 测试配置 和 测试工具 。 16. 软件测试一般经过4个测试:单元测试 集成测试 系统测试 验证测试 。
17. 单元测试 指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误,它涉及 编码 和 详细设计 的文档。
18. 集成测试指在 单元 测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。也称 组装 测试或 联合 测试。 19. 成测试的方法有两种: 非渐增式测试 渐增式测试 。
20. 渐增式测试有两种不同的组装模块的方法: 自顶向下结合 自底向上结合 。
21. 验证测试在模拟环境下运用 黑盒 测试方法,由专门测试人员 和 用户 参加的测试。 22. 软件配置审查的任务是检查软件的所有文档资料的 完整性 和 正确性 。
23. 用等价类划分法设计一个测试用例时,使其覆盖 尽可能多的 尚未被覆盖的合理等价类。
24. 用等价类划分法设计一个测试用例时,使其覆盖 一个 不合理等价类。
25. 软件测试是为了 发现错误 而执行程序的过程。
26. 运行被测程序的方法称为 动态 测试。 27. 在单元测试中,测试一个模块时,需要设计 驱动模块和桩模块 。 四、 简答题
1. 请简述软件测试活动的生命周期? 答:软件从进入测试到退出测试的过程中,所要经历的引入程序错误、通过测试发现错误和清除程序错误的几个阶段。
2. 软件的缺陷等级应如何划分? 1).致命错误,可能导致本模块以及其他相关模块异常,死机等问题; 2).严重错误,问题局限在本模块,导致模块功能失效或异常退出 3).一般错误,模块功能部分失效; 4).建议问题,由问题提出人对测试对象的改进意见;
3. 什么是软件测试?(见第一章)
4. 什么是V模型?简述V模型在软件测试过程中的作用,以及在V模型中各个测试阶段和开发过程的对应关系? 答:
V模型是软件开发瀑布模型的变种,它反映了测试活动与分析和设计的关系 。 从左到右,
描述了基本的开发过程和测试行为,非常明确地标明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间各阶段的对应关系 。 左边依次下降的是开发过程各阶段,与此相对应的是右边依次上升的部分,即各测试过程的各个阶段。
V模型的局限性在于没有明确地说明早期的测试,无法体现“尽早地和不断地进行软件测试”的原则
5. 软件测试应该划分几个阶段?简述各个阶段应重点测试的点?各个阶段的含义?
答:大体上来说可分为单元测试,集成测试,系统测试,验收测试 每个阶段又分为以下五个步骤:
测试计划,测试设计,用例设计,执行结果,测试报告
6. 你认为一个优秀的测试工程师应该具备哪些素质?
答:1、具有良好的计算机编程基础 2、具有创新精神和超前意识 3、不懈努力,追求完美 4、具有整体观念,对细节敏感 5、团队合作精神 6、责任心、耐心、细心、信心 7、沟通能力 8、时时保持怀疑态度,并且有缺陷预防的意识