1、计算机四级软件测试工程师-106 及答案解析(总分:60.00,做题时间:90 分钟)一、B选择题/B(总题数:25,分数:50.00)1.用来代替被测模块的子模块的是 _。 A.驱动模块 B.桩模块 C.调用模块 D.配置模块(分数:2.00)A.B.C.D.2.关于人工测试方法,说法正确的是 A. 走查以小组为单位进行,是一系列规程和错误检查技术的集合 B. 同行评审的文档是一种过渡性的文档,不是公开的正式文档 C. 桌上检查的文档是一个最终可交付的文档 D. 评审是一项很浪费时间的活动,会减缓项目的进度(分数:2.00)A.B.C.D.3.面向对象集成测试的目的是_。 A. 测试系统的各
2、个组成部分放在一起是否能够协调一致 B. 检查测试用例生成,测试用例执行,测试结果判断是否正确 C. 选择哪些实体集成 D. 确定每个类及其实例是否能正常工作(分数:2.00)A.B.C.D.4.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。 A. 高频集成一般采用冒烟测试的方式 B. 高频集成不预测每个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试 C. 高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块 D. )高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准可能会增加风险(分数:2.
3、00)A.B.C.D.5.通常对于网站系统,关于用户数的统计数字主要有 _。 A.注册用户数 B.在线用户数 C.同时发请求用户数 D.以上全部(分数:2.00)A.B.C.D.6.是否建立了丰富的_是衡量一个面向对象程序设计语言成熟与否的重要标志之一。 A. 函数库 B. 类库 C. 类型库 D. 方法库(分数:2.00)A.B.C.D.7.下列属于白盒测试工具的是 _。 A.Microsoft 公司的 WebStress B.Rational 公司的 TeamTest C.北京航空航天大学软件工程研究所的 QESAT D.北京航空航天大学软件工程研究所的 QESuite(分数:2.00)A
4、.B.C.D.8.一般说来,对一个程序单元的测试应满足一些具体的技术要求,或达到一定的技术指标。下面选项中属于单元测试相关的技术要求或指标的是 A. 语句覆盖率达到 100% B. 局部变量的边界条件处理正确 C. 逻辑比较和控制流处理正确 D. 以上全部(分数:2.00)A.B.C.D.9.对给予计算机的系统有用的系统测试类型有_。 (1)恢复测试(2)安全测试(3)应力测试(4)性能测试 A. (1)(2) B. (2)(3) C. (2)(3)(4) D. (1)(2)(3)(4)(分数:2.00)A.B.C.D.10.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。
5、A. 高频集成一般采用冒烟测试的方式 B. 高频集成不预测每个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试 C. 高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块 D. )高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准可能会增加风险(分数:2.00)A.B.C.D.11.下列关于软件测试过程管理的原则,说法错误的是_。 A. 有关测试需求,应当有一个经各方同意的、完整的、清楚的、详细的、整体的、可实现和可测试性的需求并文档化,尽可能坚持最初的原则 B. 最后再测试由 W 模型中抽象出来的理念 C. 全面
6、测试由 W 模型中抽象出来的理念 D. 独立的、迭代的测试由 H 模型中得到的理念(分数:2.00)A.B.C.D.12.下列叙述中正确的是 A. 测试配置是软件配置的一个子集 B. 软件测试仅是在编程之后进行的测试 C. 错误发现的越晚,改正的代价就越大,这个代价是呈现接近线性增长的趋势 D. 需求规格说明、概要设计规格说明、详细设计规格说明、源程序这些并不全是软件测试的对象(分数:2.00)A.B.C.D.13.下面不属于协议测试的类型的是 A. 一致性测试 B. 互操作性测试 C. 性能测试 D. 压力测试(分数:2.00)A.B.C.D.14.制定测试计划,要达到的目标有_。 A. 确
7、定测试所需要的时间和资源 B. 确立每个测试阶段的测试完成及测试成功的标准和要实现的目标 C. 识别出测试活动的各种风险,对风险进行消除或者降低风险带来的损失影响 D. 以上全是(分数:2.00)A.B.C.D.15.软件测试过程是一个_的过程。 A. 自顶向下,并行处理 B. 自顶向下,逐步细化 C. 自底向上,并行处理 D. 自底向上,逐步集成(分数:2.00)A.B.C.D.16.软件测试质量监控机制主要有 A. 测试用例评审机制 B. 测试覆盖检查机制 C. 软件缺陷校验机制 D. 以上全部(分数:2.00)A.B.C.D.17.下列不属于软件测试环境内容的是 _。 A.管理环境 B.
8、设计环境 C.实施环境 D.运行环境(分数:2.00)A.B.C.D.18.在代码检查的准备阶段和检查会议阶段都具有发现产品错误责任的是 A. 讲解人员 B. 检查人员 C. 协调人员 D. 开发人员(分数:2.00)A.B.C.D.19.测试人员和开发人员交流的纽带是_。 A. 软件设计报告 B. 测试说明文档 C. 软件缺陷报告 D. 测试执行报告(分数:2.00)A.B.C.D.20.在模块测试的过程中,采用自底向上的测试比自顶向下的测试 A. 好 B. 差 C. 一样 D. 不确定(分数:2.00)A.B.C.D.21.面向对象软件的单元测试中,测试的视角从程序模型扩大到_。 A.分析
9、模型 B.设计模型 C.分析和设计模型 D.用户模型(分数:2.00)A.B.C.D.22.下列不属于软件问题的主状态的是 _。 A.“新建” B.“打开” C.“修正” D.“解决”(分数:2.00)A.B.C.D.23.下列关于逻辑覆盖的叙述中,说法错误的是_。 A. 对于多分支的判定,判定覆盖要使每一个判定表达式获得每一种可能的值来测试 B. 语句覆盖是比较弱的覆盖标准 C. 语句覆盖较判定覆盖严格,但该测试仍不充分 D. 条件组合覆盖是比较强的覆盖标准(分数:2.00)A.B.C.D.24.以下关于面向对象软件测试的说法中,正确的是 A. 单个成员方法的测试不属于面向对象单元测试考虑的
10、范畴 B. 等价类划分测试只适用于传统软件的测试,不适用于面向对象软件的测试 C. 基于判定表的测试适用于面向对象软件的测试 D. 抽象类无法进行单元测试(分数:2.00)A.B.C.D.25.对测试用例进行管理,可以依据测试用例编写过程的属性、组织过程的属性和 A. 创建过程的属性 B. 测试过程的属性 C. 执行过程的属性 D. 管理过程的属性(分数:2.00)A.B.C.D.二、B论述题/B(总题数:1,分数:10.00)以下是某 C 程序段,其功能为计算输入数字的阶乘。请仔细阅读程序并完成要求。#includestdio.h#includestdlib.hint main()int i
11、=0;/*i 为计数器*/int n;int factorial=1;/*保存阶乘的结果*/puts(“*“);puts(“*The program will compute*“);puts(“*the factotial of an integer*“);puts(“*“);puts(“please input the number n:“);scanf(“%d“, n);if(n0)/*判断输入的数是否大于或等于 0*/printf(“please input an interger=0./n“);return 0;if(n=0)/*0 的阶乘是 1*/printf(“factorial
12、of 0 is 1./n“);return 0;i=1;while(i=n)factorial= factorial * i;i+;printf(“factorial of %d is: %d./n“, n, factorial);getch();return 0;(分数:10.00)(1).画出此程序主函数的控制流程图。(分数:5.00)_(2).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句或分支覆盖率无法达到 100%,则说明为什么。(分数:5.00)_计算机四级软件测试工程师-106 答案解析(总分:60.00,做题时间:90 分钟)
13、一、B选择题/B(总题数:25,分数:50.00)1.用来代替被测模块的子模块的是 _。 A.驱动模块 B.桩模块 C.调用模块 D.配置模块(分数:2.00)A.B. C.D.解析:2.关于人工测试方法,说法正确的是 A. 走查以小组为单位进行,是一系列规程和错误检查技术的集合 B. 同行评审的文档是一种过渡性的文档,不是公开的正式文档 C. 桌上检查的文档是一个最终可交付的文档 D. 评审是一项很浪费时间的活动,会减缓项目的进度(分数:2.00)A. B.C.D.解析:解析 桌上检查的文档是一种过渡性的文档,不是公开的正式文档,而同行评审的“产品”口丁以理解成最终产品的组成部分,同行评审是
14、在软件开发过程中产生需要的一个可交付的文档。产品的例子包括:需求文档、设计文档、软件代码和单元测试产品、用户/操作手册、支持手册、计划文档和过程文档等。在软件开发过程中,管理者、开发人员、客户有时会反对评审,因为他们认为评审浪费时间,会减缓项目的进度,但实际上,真正造成项目进度缓慢的是各种各样的产品缺陷,同行评审不仅可以缩短工作时间,同时还可以节约大量成本。A 选项“走查以小组为单位进行,是一系列规程和错误检查技术的集合”说法完全正确。3.面向对象集成测试的目的是_。 A. 测试系统的各个组成部分放在一起是否能够协调一致 B. 检查测试用例生成,测试用例执行,测试结果判断是否正确 C. 选择哪
15、些实体集成 D. 确定每个类及其实例是否能正常工作(分数:2.00)A. B.C.D.解析:解析 在单元测试的基础上,集成测试的目的是测试系统的各个组成部分放在一起是否能够协调一致。4.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。 A. 高频集成一般采用冒烟测试的方式 B. 高频集成不预测每个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试 C. 高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块 D. )高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准可能会增加风险(分数:2.00)A.
16、B.C. D.解析:5.通常对于网站系统,关于用户数的统计数字主要有 _。 A.注册用户数 B.在线用户数 C.同时发请求用户数 D.以上全部(分数:2.00)A.B.C.D. 解析:6.是否建立了丰富的_是衡量一个面向对象程序设计语言成熟与否的重要标志之一。 A. 函数库 B. 类库 C. 类型库 D. 方法库(分数:2.00)A.B. C.D.解析:解析 面向对象的程序设计语言不同于以往的面向程序和面向过程的程序设计语言,一切以类和对象出发,注重类和对象之间的消息传递。其语言中类库的丰富程度表征了该面向对象程序设计语言的成熟度。7.下列属于白盒测试工具的是 _。 A.Microsoft 公
17、司的 WebStress B.Rational 公司的 TeamTest C.北京航空航天大学软件工程研究所的 QESAT D.北京航空航天大学软件工程研究所的 QESuite(分数:2.00)A.B.C. D.解析:8.一般说来,对一个程序单元的测试应满足一些具体的技术要求,或达到一定的技术指标。下面选项中属于单元测试相关的技术要求或指标的是 A. 语句覆盖率达到 100% B. 局部变量的边界条件处理正确 C. 逻辑比较和控制流处理正确 D. 以上全部(分数:2.00)A.B.C.D. 解析:解析 考察单元测试的技术指标,所有选项都是单元测试的指标,故选择 D。9.对给予计算机的系统有用的
18、系统测试类型有_。 (1)恢复测试(2)安全测试(3)应力测试(4)性能测试 A. (1)(2) B. (2)(3) C. (2)(3)(4) D. (1)(2)(3)(4)(分数:2.00)A.B.C.D. 解析:10.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。 A. 高频集成一般采用冒烟测试的方式 B. 高频集成不预测每个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试 C. 高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块 D. )高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准
19、可能会增加风险(分数:2.00)A.B.C. D.解析:11.下列关于软件测试过程管理的原则,说法错误的是_。 A. 有关测试需求,应当有一个经各方同意的、完整的、清楚的、详细的、整体的、可实现和可测试性的需求并文档化,尽可能坚持最初的原则 B. 最后再测试由 W 模型中抽象出来的理念 C. 全面测试由 W 模型中抽象出来的理念 D. 独立的、迭代的测试由 H 模型中得到的理念(分数:2.00)A.B. C.D.解析:解析 软件测试过程应当尽早测试,因为问题发现得越早,造成的影响越小。这是从 w 模型中抽象出来的理念,有两方面的含义,一方面指测试人员的早期参与测试项目;另一方面指尽早开展测试执
20、行工作。12.下列叙述中正确的是 A. 测试配置是软件配置的一个子集 B. 软件测试仅是在编程之后进行的测试 C. 错误发现的越晚,改正的代价就越大,这个代价是呈现接近线性增长的趋势 D. 需求规格说明、概要设计规格说明、详细设计规格说明、源程序这些并不全是软件测试的对象(分数:2.00)A. B.C.D.解析:解析 软件测试应坚持全过程测试,因此 B、D 选项错误,C 选项代价与发现的时间呈现指数增长的趋势。故本题选 A。13.下面不属于协议测试的类型的是 A. 一致性测试 B. 互操作性测试 C. 性能测试 D. 压力测试(分数:2.00)A.B.C.D. 解析:解析 由于各种通信协议是使
21、用自然语言描述的,不同的人理解问题的角度不同,对协议的认识也会存在差异,因而协议实现者有可能因为理解错误而错误实现了协议,因此要对协议进行测试,以保证开发的系统可以正确工作,通常包括以下类型的协议测试:协议一致性测试、协议性能测试、协议互操作性测试和协议健壮性测试四种。14.制定测试计划,要达到的目标有_。 A. 确定测试所需要的时间和资源 B. 确立每个测试阶段的测试完成及测试成功的标准和要实现的目标 C. 识别出测试活动的各种风险,对风险进行消除或者降低风险带来的损失影响 D. 以上全是(分数:2.00)A.B.C.D. 解析:解析 测试计划的整体目标是为了确定测试的任务、所需的各种资源和
22、投入、预见可能出现的问题和风险,以指导测试的执行,最终实现测试的目标。制定测试计划要达到的目标有:为测试各项活动制定一个现实可行的、综合的计划,为项目实施建立一个组织模型,定义角色职责和工作内容,开发有效的测试过程模型,以便能正确地验证正在开发的系统,确定测试所需要的时间和资源,确立每个测试阶段的测试完成及测试成功的标准和要实现的目标,识别出测试活动的各种风险,对风险进行消除或者降低风险带来的损失影响。15.软件测试过程是一个_的过程。 A. 自顶向下,并行处理 B. 自顶向下,逐步细化 C. 自底向上,并行处理 D. 自底向上,逐步集成(分数:2.00)A.B.C.D. 解析:解析 软件开发
23、过程是一个自顶向下、逐步细化的过程,而软件测试过程则是相反的顺序自底向上、逐步集成的过程。16.软件测试质量监控机制主要有 A. 测试用例评审机制 B. 测试覆盖检查机制 C. 软件缺陷校验机制 D. 以上全部(分数:2.00)A.B.C.D. 解析:解析 为提高测试过程质量,可以建立质量监控机制,这样的质量监控机制主要有:测试用例评审机制;软件缺陷校验机制;个人周状态报告机制;测试组周状态报告机制;测试覆盖检查机制。17.下列不属于软件测试环境内容的是 _。 A.管理环境 B.设计环境 C.实施环境 D.运行环境(分数:2.00)A.B.C.D. 解析:18.在代码检查的准备阶段和检查会议阶
24、段都具有发现产品错误责任的是 A. 讲解人员 B. 检查人员 C. 协调人员 D. 开发人员(分数:2.00)A.B. C.D.解析:解析 检查人员在代码检查的准备阶段和检查会议阶段都具有发现产品错误的责任,检查小组的每一个成员都可以认为是一个检查人员。19.测试人员和开发人员交流的纽带是_。 A. 软件设计报告 B. 测试说明文档 C. 软件缺陷报告 D. 测试执行报告(分数:2.00)A.B.C. D.解析:解析 软件缺陷报告是测试人员和开发人员交流的纽带。20.在模块测试的过程中,采用自底向上的测试比自顶向下的测试 A. 好 B. 差 C. 一样 D. 不确定(分数:2.00)A. B.
25、C.D.解析:解析 自底向上测试和自顶向下测试都是增量式的测试方法,在自底向上测试中,首先测试最底层的模块,利用辅助的驱动模块调用,然后测试高层次的模块。而白顶向下测试则刚好相反,它是首先测试顶层模块,无需编写驱动模块,但要使用桩模块,然后测试下一层模块。二者各有优缺点,但权衡来看,自底向上测试的方法要优于自顶向下测试方法。21.面向对象软件的单元测试中,测试的视角从程序模型扩大到_。 A.分析模型 B.设计模型 C.分析和设计模型 D.用户模型(分数:2.00)A.B.C. D.解析:解析 面向对象软件测试的总体目标是以最小的工作量发现最多的错误,与传统软件测试的目标是一致的,但面向对象软件
26、测试的策略与传统软件测试有很大不同。其一,测试的焦点从过程构件(模块)移向了类:其二,测试的视角扩大到了分析和设计模型。22.下列不属于软件问题的主状态的是 _。 A.“新建” B.“打开” C.“修正” D.“解决”(分数:2.00)A.B.C. D.解析:23.下列关于逻辑覆盖的叙述中,说法错误的是_。 A. 对于多分支的判定,判定覆盖要使每一个判定表达式获得每一种可能的值来测试 B. 语句覆盖是比较弱的覆盖标准 C. 语句覆盖较判定覆盖严格,但该测试仍不充分 D. 条件组合覆盖是比较强的覆盖标准(分数:2.00)A.B.C. D.解析:解析 考查白盒测试中各种逻辑覆盖之间的关系。条件组合
27、判定强于判定覆盖,语句覆盖则较判定覆盖弱。24.以下关于面向对象软件测试的说法中,正确的是 A. 单个成员方法的测试不属于面向对象单元测试考虑的范畴 B. 等价类划分测试只适用于传统软件的测试,不适用于面向对象软件的测试 C. 基于判定表的测试适用于面向对象软件的测试 D. 抽象类无法进行单元测试(分数:2.00)A.B.C.D. 解析:解析 抽象类中的方法没有具体的定义,不能进行方法层次的测试,方法层次的测试是单元测试中非常重要的方面,缺少了这一方面也就不能进行单元测试。25.对测试用例进行管理,可以依据测试用例编写过程的属性、组织过程的属性和 A. 创建过程的属性 B. 测试过程的属性 C
28、. 执行过程的属性 D. 管理过程的属性(分数:2.00)A.B.C. D.解析:解析 测试用例要经过创建、修改和不断完善的过程。测试用例的属性有:优先次序、目标性、所属的范围、关联性、阶段性、状态性、时效性、所有者、日期等特性。根据测试用例的属性及编号等可对测试用例进行基于数据库方式的良好管理,另外也可以依据测试用例编写过程的属性、组织过程的属性和执行过程的属性来对测试用例进行有效管理。二、B论述题/B(总题数:1,分数:10.00)以下是某 C 程序段,其功能为计算输入数字的阶乘。请仔细阅读程序并完成要求。#includestdio.h#includestdlib.hint main()i
29、nt i=0;/*i 为计数器*/int n;int factorial=1;/*保存阶乘的结果*/puts(“*“);puts(“*The program will compute*“);puts(“*the factotial of an integer*“);puts(“*“);puts(“please input the number n:“);scanf(“%d“, n);if(n0)/*判断输入的数是否大于或等于 0*/printf(“please input an interger=0./n“);return 0;if(n=0)/*0 的阶乘是 1*/printf(“factor
30、ial of 0 is 1./n“);return 0;i=1;while(i=n)factorial= factorial * i;i+;printf(“factorial of %d is: %d./n“, n, factorial);getch();return 0;(分数:10.00)(1).画出此程序主函数的控制流程图。(分数:5.00)_正确答案:(主程序的控制流程图如下图所示。 *)解析:(2).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句或分支覆盖率无法达到 100%,则说明为什么。(分数:5.00)_正确答案:(测试用例的设计只要覆盖所有的分支情况即可,设计如下: N=-9,0,12, *)解析: