1、2010年 3月计算机四级软件测试工程师真题试卷及答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 以下叙述中正确的是 _。 ( A)可跟踪性分析是在整体上分析整个资源的分配策略 ( B)关键性分析是标识原始需求和相应开发结果之间关系的能力 ( C)接口分析必须关注三种接口:用户接口,硬件接口和软件接口 ( D)评估权在软件开发的最后阶段进行,以确认产品是否符合规格说明 2 场 景测试方法是基于 IBM推行的 RUP的测试用例生成方法,该方法的出发点是_。 ( A)事
2、件流 ( B)数据流 ( C)控制流 ( D)用例 3 下面一段小程序是判断一个长度为 n的字符数组是否中心对称。例如,“abcddcba”或 “abcdcba”就是中心对称。作为内部边界值,应填入 ( )内的判断应是_。 ( A) i j ( B) i=j(判等 ) ( C) i j ( D) i!=j(判不等 )Bool center-sym(char S, int n) /判断字符组 S中的 n个 字符是否中心对称。是则函数返回 true,否则返回 false; Int i=1, j=n; While() If(Si-1!=Sj-1) return false; /i, j从 1开始计数
3、,数组从。开始 Elsei=i+1; j=j-1; Return true; 4 检查系统能否正确的接受输入,能否正确的输出结果,这属于 _。 ( A)安全性测试 ( B) GUI测试 ( C)功能测试 ( D)协议一致性测试 5 检查是否存在 “已定义但未使用 ”的 变量引用异常应属于 _。 ( A)静态分析 ( B)动态分析 ( C)代码执行 ( D)调试 6 如果程序通过了 100%的代码覆盖率测试,则说明程序满足了 _。 ( A)语句覆盖 ( B)编程规范 ( C)设计规格 ( D)功能需求 7 下面有关逻辑覆盖的说法中错误的是 _。 ( A) DDP覆盖是判定覆盖的一个变体 ( B)
4、满足条件覆盖一定也满足判定覆盖 ( C)指令块覆盖属于语句覆盖 ( D)若判定覆盖率道道 100%,则语句覆盖率一定也达到 100% 8 对于具有串联型分 支结构的程序,如果有七个判断语句串联,则使用正交实验设计法,至少需要的测试用例数应为 _。 ( A) 23 ( B) 24 ( C) 26 ( D) 27 9 考虑一个计算平方根的函数,其规格说明如下: 输入:浮点数 输出:浮点数 规格,当输入一个大于或等于零的浮点数时,函数输出其正的平方根并返回true;当输入一个小于 0的浮点数时,函数显示输出错信息 “非法输入值 ”并返回false。 按照规范导出法,应设计的测试用例数至少应为 _。
5、( A) 1 ( B) 2 ( C) 3 ( D) 4 10 适合使用自底向上的增量式集成方式进行集成和测试的产品应属于 _。 ( A)使用了严格的净室软件工程过程的产品 ( B)控制模块具有较大技术风险的产品 ( C)采用了契约式设计的产品 ( D)在极限编程中使用了探索式开发风格的产品 11 以下哪种软件测试属于软件性能测试的范畴是 _。 ( A)分支覆盖测试 ( B)极限测试 ( C)负载测试 ( D)硬件兼容性测试 12 以下关于软件性能测试的说法中,正确的是 _。 ( A)达到百分之百的语句覆盖是软件性能测试的一 个前提条件 ( B)并发进程数是度量软件性能的一项基本指标 ( C)探
6、测软件在满足预定的性能需求的情况下所能负担的最大压力是失效恢复测试的主要目的之一 ( D)发现压力下软件功能的缺陷是软件性能测试的主要目的之一 13 以下关于软件可靠性测试的说法中,正确的是 _。 ( A)软件可靠性测试能有效地减少软件在恶意使用下出现崩溃的次数 ( B)软件可靠性测试的主要目的是度量软件的可靠性 ( C)在一次软件可靠性测试中,执行的测试用例可以不完全符合所定义的软件运行剖面 ( D)软件可靠性测试使用的测 试用例必须满足语句覆盖 14 以类为单元进行单元测试时,以下说法中正确的是 _。 ( A)一个测试用例可以调用该类的多个方法,但每个方法只能调用一次 ( B)一个测试用例
7、只能调用在该类中定义的方法,不能调用在该类的父类中定义的方法 ( C)由该类方法组成的任何一个序列都是一个合理的测试用例 ( D)针对一个类的多个实例间协作的测试仍然属于面向对象单元测试的范畴 15 以下关于面向对象软件测试的说法中,错误的是 _。 ( A)不变式边界测试是一种类级别的单元测试技术 ( B)对于一棵继 承树上的多个类,只有处于叶结点的类需要测试 ( C)测试动态绑定时类树测试的一个目标 ( D)在面向对象单元测试中,等价类划分测试可以用于方法级别的测试 16 以下关于面向对象软件集成测试的说法中,正确的是 _。 ( A)大突击测试总是面向对象软件集成测试效果最差的方法 ( B)
8、基于判定表的测试是面向对象软件集成测试的常用方法 ( C)大突击测试无须增量集成 ( D)自底向上集成需要开发的测试代码总是比自顶向下集成需要开发的测试代码多 17 以下关于 Web应用软件测试的说法中,正确的是 _。 ( A)内容测试是 Web应用软件易用性测试的一项重要内容 ( B) Web应用软件虽然需要频繁地进行演化,但不需要频繁地进行测试 ( C) Cookie安全性测试是 Web应用软件安全性测试的一项重要内容 ( D) Web应用软件只能进行白盒测试,不能进行黑盒测试 18 以下关于 Web应用软件测试的说法中,正确的是 _。 ( A) Web应用软件安全性测试只关注用户能否绕开
9、访问控制使用超越访问权限的内容 ( B) Web应用软件的性能不仅与 Web应用软件自身的代码有关,还可能与所用的 Web服务器 、中间件服务器以及数据库服务器有关 ( C)测试 Web应用软件是否支持不同的浏览器是 Web应用软件表示层测试关注的一项主要内容 ( D)对于没有使用数据库的 Web应用软件,不需要进行性能测试 19 以下哪一项属于软件易用性测试关注的内容 ?_。 ( A)软件是否能帮助用户减少输入中的重复劳动 ( B)软件界面的色彩是否协调 ( C)软件是否允许用户导入由该软件以前版本生成的数据 ( D)软件的界面风格是否与同类软件的界面风格一致 20 以下哪一项不属于数据兼容
10、性测试关注的范畴 ?_。 ( A)一个 Web应用软件是否支持不同的关系型数据库 ( B)一个浏览器是否同时支持不同版本的 HTML文件格式 ( C)一个排版软件是否可以打开该软件以前版本保存的文件 ( D)一个文字处理软件是否可以打开其他文字处理软件保存的文件 21 下列有关测试过程抽象模型的描述中正确的是 _。 ( A) V模型指出,软件测试要尽早准备,尽早执行,只要某个测试达到了准备就绪点,测试执行活动就可开展 ( B) W模型强调,测试伴随着整个软件开发周期同步进行,而且测试的对象不仅仅是程序,需求、设计也同样需要测 试 ( C) H模型指出,单元测试和集成测试应检测程序的执行是否满足
11、软件设计的要求 ( D) X模型提出针对完整的程序进行集成的编码和测试 22 以下活动中,哪个不属于测试计划的内容 ?_。 ( A)为测试各项活动制定一个实现可行的综合的计划 ( B)确定测试过程中每个测试阶段的测试完成标准 ( C)识别测试活动中各种风险,并给出风险应对措施 ( D)分析测试需求,并制定测试方案 23 以下有关回归测试的说法中错误的是 _。 ( A)严格来说,回归测试不是一个测试阶段,只是一种可以用 于各个测试阶段的测试技术 ( B)回归测试的目标是保证被测应用在系统被修改和扩充后,各项功能依然正确 ( C)回归测试可以在系统和验收测试环境下进行 ( D)回归测试适合采用传统
12、手工方法来完成,而不适合使用自动化测试工具来完成 24 软件静态分析一般包括:控制流分析、数据流分析、接口分析,以及 _。 ( A)表达式分析 ( B)功能分析 ( C)边界值分析 ( D)因果图分析 25 以下说法中错误的是 _。 ( A)单元测试一般采用白盒测试方法,辅以黑盒测试方法 ( B)集成测 试主要采用黑盒测试方法,辅以白盒测试方法 ( C)配置项测试一般采用白盒测试方法 ( D)系统测试一般采用黑盒测试方法 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。 25 考虑一个根据以下简单规格确认输入数有效性的应用程序
13、: 输入数由数字、符号 “+”或 “-”开始; 该数字或符号后面可接任意位数的数字; 这些数字可以有选择地后接用英文句号表示的小数点; 任何输入数,不管是否有小数点,都应该以空格结束。 请根据以上处理规则: 26 画出相应的状态转换图。 27 根据状态转换图,列出相应的状态转换表,给出 “当前状态 ”、当前状态允许的“输入 ”和对应每一个输入的 “下一个状态 ”。 28 根据状态转换图和状态转换表,导出基本路径测试的测试用例及其覆盖的测试路径。 29 QESuite Web Version 1.0中,已知 DUCHA 1.0工作专网系统测试项目的部分信息如下: 测试版本:总计三个测试版本,按日
14、期排序分别为DUCHA1.0_100105, DUCHA1.0_100205, CUCHA1.0_100210。 功能分类视图中部分待测区域及人员分配定义如下表所示:已知在功能区域 “工作平台 /归档 ”下有一个软件问题处于 “打开 /再现 ”状态,下表中是该软件问题操作历史信息,请依据 QESuite Web Version 1.0的软件问题生命周期定义和题中提供的相关人员分配和测试版本信息,填写表中空缺的操作历史信息。 29 已知 C源程序如下: #include stdio. h #include string. h void reverse(char S) int C, i, J; f
15、or(i=0, j=strlen(s)-1; i j; i+, j+) c=si; si=sj; sj=c; void getHex(int number, char s) int I; i=0; while(number 0) if(number%16 10) si+=number%16+0; else switch(number%16) case 10: si+=A; break; case 11: si+=B; break; case 12: si+=C; break; case 13: si+=D; break; case 14: si+=E; break; case 15: si+=
16、F; break; default: printf(“Error“); break; number/=16; si: o; reverse(s); int main() unsigned int number; int i=0: char s50; printf(“%s“, “please input number; n“); scanf(“%d“, number): getHex(number, s); i=0; while(si) printf(“%c“, si+); return 0; 30 画出程序中所有函数的控制流程图。 31 设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖
17、率均能达到100%。如果认为该程序的语句覆盖率或分支率无法达到 100%,需说明为什么。 2010年 3月计算机四级软件测试工程师真题试卷答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 【正确答案】 C 【试题解析】 接口分析的目的是评估软件交付物是否正确、已知、完整和准确地说明了接口需求。接口分析必须关注三种接口:用户接 口、硬件接口和软件接口。 2 【正确答案】 C 【试题解析】 场景测试方法是基于 IBM推行的 RUP的测试用例生成方法。该方法从系统分析的结构
18、 用例出发,通过对每个用例的场景进行分析,逐步实现测试用例的构造。 3 【正确答案】 A 【试题解析】 内部边界值测试可以用来发现一些内部错误,如误把 “ ”写作 “=”。但内部边界值测试应作为一种补充方法,在其他方法的最后使用。 4 【正确答案】 C 【试题解析】 功能测试主要是为了发现以下几类错误:是否有不正确或遗漏了的功能;功能实现是 否满足用户需求和系统设计的隐式需求;能否正确地接受输入,能否正确地输出结果。 5 【正确答案】 A 【试题解析】 静态错误分析有以下几种:类型和单位分析,引用分析等,其中在静态错误分析中,最广泛使用的技术就是发现引用异常。 6 【正确答案】 A 【试题解析
19、】 语句覆盖就是设计若干测试用例,运行被测程序,使得每一可执行语句至少执行一次。 7 【正确答案】 B 【试题解析】 条件覆盖是指设计若干个测试用例,运行被测程序,使得程序中每个判定的每个条件的可能取值至少评价一次。而判定覆盖 是设计测试用例,使得程序中每个判定的取真分支和取假分支至少评价一次。两者没有必然的联系,故满足条件覆盖的未必会满足判定覆盖,选项 B错误。而满足判定覆盖一定会满足语句覆盖是容易理解的,因为每个判定的取真分支和取假分支都至少评价一次,必然预示着每个可执行语句至少评价了一次,即满足了语句覆盖。另外指令块覆盖是语句覆盖的一个变体,而 DDP覆盖 (判定路径覆盖 ) 是判定覆盖
20、的一个变体。 8 【正确答案】 A 【试题解析】 设串联型分支结构中有 n个判定语句,计算满足关系式 ”+12m的最小自然数 m;设 t=2m取 正交表 Lt,并利用它设计测试数据,其中 t为最少需要的测试用例数。 9 【正确答案】 B 【试题解析】 规范导出的测试是根据相关的规格说明书描述来设计测试用例的。每一个测试用例用来测试一个或多个规格说明的陈述语句。规范导出法就是根据陈述规范所用语句的顺序来响应的为被测单元设计测试用例。 10 【正确答案】 C 【试题解析】 自底向上的增量式集成的目的是从底层构件开始,按照模块调用图的机构,逐层向上集成,以检测整个系统的稳定性。对于具有如下属性的产品
21、,可以优先考虑本集成测试策略:采用契约式设 计的产品;底层接口比较稳定的产品;高层接口变化比较频繁的产品;底层模块较早完成的产品。 11 【正确答案】 C 【试题解析】 软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是在完成该功能时展示出来的及时性。根据测试目的的不同,可以把软件性能测试以及与性能有关的其他一些测试分为: 性能测试。 并发测试。 压力测试。 可靠性测试。 负载测试。 配置测试。 失效恢复测试。 本题的答案中只有负载测试属于软件性能测试 的范畴。故本题选 C。 12 【正确答案】 A 【试题解析】 A选项叙述是正确的。软件性能的主要指标有:响应时间、
22、系统响应时间和应用延迟时间、吞吐量、并发用户数、资源利用率,此处指代的是并发用户数,即系统可以同时承载的正常使用系统功能的用户数量,并不是并发进程数。所以 B选项叙述错误。失效恢复测试是指验证系统从故障中恢复能力的测试,很多系统应对具有一些容错的能力,在出现某些故障时,仍然能够让用户继续使用下去。所以 C选项叙述错误。软件性能测试的目标包括:发现缺陷、性能调优、能力检验与规划。所以 D选项叙 述错误。本题选择 A。 13 【正确答案】 D 【试题解析】 软件可靠性测试的目的是收集软件测试时软件故障的情况,并对其进行整理从而为分析和预测软件的可靠性提供帮助。对于具体每个测试用例的设计,可靠性测试
23、需要的测试用例与普通的软件测试并无不同,关键是要保证用于可靠性测试的测试用例集要完全符合运行剖面的定义。因此,此时的测试用例的设计可以完全在运行剖面的指导下进行。 14 【正确答案】 A 【试题解析】 A选项的叙述是正确的。继承是面向对象的一个重要的机制,它允许子类直接获取父类的属性和方法 ,从而实现对父类的复用,所以 B选项的叙述是错误的。由于面向对象具有封装的特点,在对面向对象软件进行测试时,不能简单地对每个类的成员方法进行测试,在调用任何成员方法之前还必须保证相应的实例处于该方法的预期工作状态,即没计类的测试用例时,不仅要考虑各成员方法的输入参数,还要考虑如何设计调用的序列。所以 C选项
24、叙述错误。由于面向对象程序中可独立被测试的单元通常是一个类族或最小是一个独立的类,面向对象程序的单元测试主要考虑类和类族的测试, D选项中针对一个类的多个实例间的协作测试应输入面向对象集成测试考虑的范畴。综上所 述,本题选择 A。 15 【正确答案】 B 【试题解析】 A、 C、 D选项的叙述都是正确的。面向对象中有集成和多态现象,所以对子类的测试通常不能限定在子类中定义的成员变量和成员方法上,还要考虑父类对子类的影响,所以 B选项的叙述是错误的。 16 【正确答案】 C 【试题解析】 所谓大突击集成就是将系统的所有组成成份都集成在一起进行测试。与其他集成策略不同的是,大突击集成只能进行一轮,
25、无须进行增量集成。 17 【正确答案】 C 【试题解析】 A选项叙述错误,内容测试和易用性测试都是 Web应用软件系统测试的主要内容。 B选项叙述错误, Web软件演化频繁,但均需要进行测试工作。 C选项叙述正确。 D选项错误, Web应用软件测试白盒黑盒测试方法都可使用。故 C为答案。 18 【正确答案】 B 【试题解析】 对 Web应用软件而言, Web服务器、中间服务器和数据库服务器的配置都可能影响其性能。 19 【正确答案】 A 【试题解析】 与手工相比,使用软件的一个主要优点是能够减少重复的输入,从而保证数据的一致性。 20 【正确答案】 A 21 【正确答案】 B 【试题解析 】
26、V模型反映出测试活动与分析没计活动的关系,指出单元测试和集成测试应检测程序的执行是否满足软件设计的要求。系统测试应检测系统功能、性能的质量特性是否达到系统要求的指标。验收测试确定软件的实现是否满足用户需要或合同的要求。所以 A选项叙述错误。 W模型指出软件各开发阶段中应同步进行的验证和确认活动,即测试与开发也应是同步进行的。 W模型有利于尽早和全面地发现问题。 B选项正确。 V模型与 W模型有不妥,即它们都把软件的开发视为需求、设计和编码等一系列串行的活动,而事实上这些活动可以交叉进行的。 H模型揭示一点:软件测试 是一个独立的流程,贯穿于产品的整个生命周期中,与其他流程并发进行。 C选项错误
27、。 D选项叙述不是 X模型所关注的内容,错误。所以此题选 B。 22 【正确答案】 D 【试题解析】 制定测试计划,要达到的目标有:为测试各项活动制定一个现实可行的综合的计划;建立一个组织模型;开发有效的测试模型;确定测试所需要的时间和资源;确定测试过程中每个测试阶段的测试完成标准和要实现的目标;标识出测试活动中各种风险,并给出风险应对措施。 23 【正确答案】 D 【试题解析】 自动测试工具不是智能测试工具,而是再 测试工具,及回归测试工具。 24 【正确答案】 A 【试题解析】 静态错误分析主要用于确定在源程序中是否有某类错误或危险结构。它有以下几种类型:单位分析,引用分析,表达式分析,接
28、口分析。 25 【正确答案】 C 【试题解析】 系统测试与单元测试,集成测试的区别在于测试方法不同:系统测试一般采用黑盒测试方法;单元测试一般采用白盒测试方法,辅以黑盒测试方法;集成测试主要采用黑盒测试方法,辅以白盒测试方法。 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题 纸的相应位置上,否则无效。 26 【正确答案】 27 【正确答案】 28 【正确答案】 基本路径集 =Cache复杂度 =4 设计测试用例如下: 输入空值,执行路径 S1-S2-S1。 输入 abc,空值,执行路径 S1-S2-S3-S2-S1。 输入 123_,执行路径 S1-S2-S3-S1。 输入 abc, 4.56_执行路径 S1-S2-S3-S2-S3-S1。 29 【正确答案】 30 【正确答案】 流程图31 【正确答案】 设计测试用例 输入 0,输出 0。 输入 2,输出 2。 输入 26,输出 A。 输入 27,输出 B。 输入 28,输出 C。 输入 29,输出 D。 输入 30,输出 E。 输入 31,输出 F。 输入 20P,输出错误。 语句覆盖率无法达到 100%,因为 main()函数中的 return 0语句永远无法执行。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1