当前位置:文档之家› 2011年9月计算机等级考试四级软件测试工程师笔试真题及答案

2011年9月计算机等级考试四级软件测试工程师笔试真题及答案

2011年9月计算机等级考试四级软件测试工程师笔试真题及答案一、选择题下列各题四个选项中,只有一个选项是正确的。

(1)ANSI/IEEE STD729-1983 给出软件质量的定义:软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。

以下叙述中不属于这些质量特征和特性的是A) 产品功能 B) 效率 C) 可使用性 D) 项目成本和进度(2)软件产品需求规格说明书是软件缺陷存在最多的地方,其原因是A) 软件开发人员与用户沟通比较困难,对要开发的产品需求理解不一致B) 系统设计不能全面考虑产品在功能、性能、安全性、可维护性等方面的平衡C) 采用不熟悉的新技术开发系统或不科学的算法解决问题D) 系统内各子系统或模块的参数过于复杂,导致信息传递失误(3)条件覆盖的基本思想是设计若干测试用例,执行被测程序,使得每个判断的每个条件的可能取值至少满足一次。

那么对于如下的 C 语言程序段 if(a>0&&b >0)c=c/a; if(a>1||c>1)c=c+1;如果采用适用于条件覆盖的两个测试用例,其输入值分别为 a=2,b=-1, c=-2 和 a=-1,b=2,c=3,则以下叙述中正确的是A) 执行测试后,4个条件a>0,b>0,a>1,c>1 的所有取值都至少执行一次B) 执行测试后,除 b>0 取真和 c>1 取假外其他条件取值都至少执行一次C) 执行测试后,除 b>0 取假和 c>1 取真外其他条件取值都至少执行一次D) 执行测试后,除 b>0 取真和 c>1 取真外其他条件取值都至少执行一次(4)对于题 3 所给的 C 语言程序段 if(a>0&&b>0)c=c/a; if(a>1||c>1)c=c+1;执行条件组合覆盖,为使得每一条件取值组合至少执行一次,需要的测试用例数至少是A) 2 B) 3 C) 4 D) 5(5)单元接口测试是单元测试的一种,以下不属于单元接口的是A) 参数表 B) 输入/输出文件 C) 出错信息处理 D) 全局量(6)下图(a)是一个程序的模块结构。

模块 A 是主模块。

下图(b)是集成测试顺序的示意图。

从此图可知,这个集成策略是:A) 自顶向下集成 B) 自底向上集成 C) 大突击集成 D) 三明治式集成(7)集成测试分析的作用是指导集成测试用例的设计,安排测试和集成顺序。

集成模块划分是集成测试分析的一个重要环节。

以下叙述中不属于合理的集成模块划分的是A) 被集成的几个模块间的联系必须很密切B) 可以很容易地隔离集成模块的外围模块C) 集成模块内部各个模块必须共享某些数据区或程序区D) 能够简便地模拟外围模块向集成模块发送消息(8)破坏性测试的任务是评测软件在承受超出其正常负荷 N 倍的情况下,错误出现时的状态和错误发生后的恢复能力。

它的实施主要在A) 系统层 B) 子系统层 C) 协议/指标层 D) 用户层(9)程序代码检查过程中为检查说明、使用错误,通常需要借助一些引用表。

以下不适用于做这种检查的引用表是A) 循环层次表 B) 事件/响应表 C) 变量交叉引用表 D) 标号交叉引用表(10)在单元测试过程中,“差 1 错”属于比较错误,它是指A) 不正确地多循环或少循环一次B) 不同数据类型的比较C) 不正确的逻辑运算符或优先次序D) 当遇到死循环时无法跳出循环(11)以下关于软件性能测试的说法中,正确的是A) 检测每个函数的 McCabe 圈复杂度是软件性能测试关注的主要内容B) 缩短平均故障修复时间是软件性能测试的主要目的之一C) 提高并发进程数是软件性能测试的主要目的之一D) 吞吐量是软件性能测试中一种常用的性能指标(12)以下哪种软件测试不属于软件性能测试的范畴A) 数据流测试 B) 压力测试 C) 负载测试 D) 并发测试中(13)以下关于软件可靠性测试的说法中,正确的是A) 软件可靠性测试总是能比白盒测试发现更多的错误B) 软件可靠性测试总是能比黑盒测试发现更多的错误C) 软件可靠性测试不关注与软件性能有关的软件故障D) 软件可靠性测试度量出来的软件可靠性特定于所定义的软件运行剖面(14)以下关于软件可靠性与硬件可靠性的主要区别的说法中,错误的是A) 软件的失效多是逻辑错误引起的;硬件的失效很多不是逻辑错误引起的B) 硬件在使用过程中会发生物理退化;软件在使用过程中不会发生物理退化C) 硬件的使用者少,不容易引起失效;软件的使用者多,更容易引起失效D) 软件的每个拷贝都是完全一样的;按照设计生产出来的同规格硬件总有微小差别(15)以下关于面向对象软件测试的说法中,正确的是A) 对于一个类进行单元测试时,一个测试用例只能调用在该类中定义的方法,不能调用在该类的父类中定义的方法B) 对于一个类进行单元测试时,一个测试用例只能调用在该类的父类中定义的方法,不能调用在该类中定义的方法C) 对于一个类进行单元测试时,一个测试用例既可以调用在该类的父类中定义的方法,也可以调用在该类中定义的方法D) 对于一个类进行单元测试时,由该类及其父类中定义的方法组成的任何一个序列都是一个合理的测试用例(16)以下关于面向对象软件测试的说法中,正确的是A) 不需要对抽象类进行单元测试B) 等价类划分测试是一种类层次的测试技术C) 不变式边界测试是一种类层次的测试技术D) 测试动态绑定是类树测试的唯一目标(17)以下关于面向对象软件集成测试的说法中,错误的是A) 协作集成是指将可以协作完成特定系统功能的类集成在一起进行集成测试B) 针对一个类的多个成员方法闻协作的测试不属于面向对象软件集成测试关注的范畴C) 针对一个类的多个实例间协作的测试不属于面向对象软件集成测试关注的范畴D) 针对一个类树上多个类的行为的测试属于面向对象软件集成测试关注的范畴(18)以下关于 Web 应用软件测试的说法中,正确的是A) 内容测试是 Web 应用软件性能测试的一项重要内容B) 表单测试是 Web 应用软件易用性测试的一项重要内容C) 并发测试是 Web 应用软件安全性测试的一项重要内容D) Cookie 测试是 Web 应用软件功能测试的一项重要内容(19)以下哪一项不属于软件易用性测试关注的内容A) 相似功能的使用风格是否与同类软件一致B) 软件内相似功能的使用风格是否一致C) 软件是否能帮助用户减少输入中的重复劳动D) 软件界面的色彩是否悦目(20)以下哪一项不属于兼容性测试关注的范畴A) 操作系统是否能运行于不同的硬件平台B) 杀毒软件在清除病毒时是否会影响办公软件的正常工作C) Web 应用软件是否支持不同的关系型数据库D) 软件用户手册中的功能说明与实际功能是否一致(21)下列有关测试活动的描述中,错误的是A) 测试策划的主要依据包括测试合同中测试范围和进度安排要求等B) 测试执行中不能随意修订测试计划C) 测试用例设计是测试执行的主要内容D) 测试总结的目的是对测试结果进行分析,以确定软件产品质量的当前状态(22)以下有关回归测试的说法中,正确的是A) 回归测试是一个测试阶段B) 回归测试的目标是确认被测软件经修改和扩充后正确与否C) 回归测试不能用于单元和集成测试阶段D) 回归测试是指在软件新版本中验证已修复的软件问题(23)下列有关测试过程质量控制的描述中,正确的是A) 测试设计与实现应完整覆盖测试需求B) 测试过程中不能对测试需求进行重新获取C) 测试过程中,若相同时间间隔内发现的缺陷数量呈收敛趋势,则可结束测试D) 软件测试应解决软件系统中所有缺陷(24)下列关于开始软件测试工作应具备的条件中,错误的是A) 具有测试合同(或项目计划)B) 软件测试文档齐全、符合规范C) 所提交的被测软件受控D) 软件源代码正确通过编译或汇编(25)软件测试文档可进行合理的取舍与合并,对于微、小规模软件,下列说法中错误的是A) 测试计划和测试说明可以合并B) 测试报告中可包括测试记录和测试问题报告C) 测试报告、测试记录、测试问题报告和测试总结报告可以合并D) 测试说明和测试报告可以合并二、论述题论述题 1:在企业信息管理系统中,人员信息查询是最常见的。

使用以下3个独立的查询条件:1)员工号(ID) 2)员工姓名(Name) 3)员工邮件地址(eMail)每个查询条件可有可无,但不能都没有;且条件的取值可以是能查到的,也可以是查不到的。

当出现多个查询条件时,按 ID→Name→eMail 的顺序查询。

如果某一条件未出现,则检查下一条件;如果某一条件出现,则检查满足该条件取值的信息是否存在:若不存在,立刻中止查询,并输出失败信息;若存在,继续下一条件查询,最后输出查询结果。

要求 (1)画出实现查询的程序流程图。

(2)给出一组测试路径,能覆盖程序流程图的所有分支。

(1)画出程序中函数 addLInt 的控制流程图;(2)设计一组测试用例,使该程序 addLInt 函数的语句覆盖率和分支覆盖率均能达到 100%。

如果认为该函数的语句覆盖率或分支覆盖率无法达到 100%,需说明为什么。

参考答案及解析一、选择题(1)D (2)B(3)B[解析] 根据与“&&”、或“||”的“短路”运行特性,结合两组输入值分析可知,第一个判断条件b>0 取真,第二个判断条件c>1 取假没有被执行,其他条件的取值都被至少执行了一次。

(4)C[解析] 两个分支四条路径,至少需要4个测试用例。

(5)D[解析] 单元测试从5个方面考虑,分别是:模块接口、出错处理、独立路径、边界条件和局部数据结构。

答案中,参数表和输入/输出文件属于模块接口,所以答案选D。

(6)B(7)C[解析] 合理的集成测试模块划分应满足以下几点:被集成的几个模块之间的关系必须密切;可以方便地隔离集成模块的外围模块;能够简便地模拟外围模块向集成模块发送消息;外围模块向被测试的集成模块发送的消息能够模拟实际环境中的大多数情况。

(8)A(9)B[解析] 引用表是为了支持对源代码进行静态检查,可分为:标号交叉引用表;变量交叉引用表;子程序、宏和函数表;等价表;常数表。

(10)A[解析] “差1 错”是指:不正确地多循环或少循环一次;迭代发散时不能退出;错误地修改了循环变量。

(11)D[解析] 软件性能的指标主要有: ①响应时间。

②系统响应时间和应用延迟时间。

③吞吐量。

④并发用户数。

⑤资源利用率。

(12)A[解析] 软件性能的测试主要分为: ①性能测试。

②并发测试。

③压力测试。

④可靠性测试。

⑤负载测试。

⑥配置测试。

⑦失效恢复测试。

(13)D(14)C[解析] 软件可靠性与硬件可靠性的区别: ①唯一性。

软件设计出来以后,每份拷贝都是完全一样的,而硬件在设计出来以后-每个按照设计生产的硬件都不可能完全相同。

相关主题