1、计算机新国家四级软件测试工程师模拟试卷 34及答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 以下关于软件可靠性与硬件的可靠性主要区别的说法中,正确的是 _。 ( A)软件的每个拷贝都是完全一样的,而按照设计生产出来的同规格硬件总有微小差别 ( B)软件经常面临恶意的使用者,而硬件没有恶意的使用者 ( C)软件的使用者通常遍及整个世界,而硬件的使用者通常只局限于某个地区 ( D) 软件的失效都是逻辑错误引起的,而硬件的失效都不是逻辑错误引起的 2 关于逻辑覆盖,说法
2、错误的是 _。 A) DDP覆盖是判定覆盖的一个变体 B) 满足条件覆盖一定也满足判定覆盖 C) 指令块覆盖属于语句覆盖 D) 若判定覆盖率达 100%,则语句覆盖率一定也是 100% 3 如果程序中有两个判定条件,其复合条件表达式分别为 (a =3) and (b =6)和 (a 0) or (c 2),则为了达到 100%的判定覆盖率,至少需要没计的测试用例个数为_。 A) 1 B) 2 C) 3 D) 4 4 走查过程中的静态分析技术用到调用图,通过调用图我们不可以做的是 _。 A) 检查程序中变量的说明和引用 B) 检查程序中全局变量、参数误用的问题 C) 为动态测试用例的设计提供可靠
3、的依据 D) 对程序进行分析和修改 5 把经过评审通过的各项需求转换为一个相应的体系结构,包括数据的体系结构、系统和软件的体系结构,这是软件生命周期哪一阶段做的事情 _。 A) 系统和需求定义 B) 编程和单元测试 C) 软件设计 D) 运行和维护 6 以下叙述中正确的是 _。 A) 可跟踪性分析是在整体上分析整个资源的分配策略 B) 关键性分析是标志原始需求和相应开发结果之间关系的能力 C) 接口分析必须关注三种接口:用户接口,硬件接口和软件接口 D) 评估全在软件开发的最后阶段进行,以确认产品是否符合规格说明 7 在边界值分析中,下列数据通常不用来做测试数据的是 _。 ( A)正好等于边界
4、的值 ( B)等价类中的典型值 ( C)刚刚大于边界的值 ( D)刚刚小于边界的值 8 在北京某个银行的人事信息管理软件中,系统允许用户输入人员的身份证号和进入本单位工作的日期。那么 ,下面哪一组是无效的输入值组合 _。 ( A) 110108196111111321, 1981.1.1 ( B) 110108198111111322, 1981.1.1 ( C) 110108196810121323, 2005.1.1 ( D) 1101081012132, 2005.1.1 9 在面向对象软件测试中,下面测试策略是从用户的角度出发进行的是 _。 ( A)面向对象软件的单元测试 ( B)面向
5、对象软件的集成测试 ( C)面向对象软件的人工测试 ( D)面向对象软件的确认测试 10 不属于界面元素测试内容的是 _。 ( A)数据测试 ( B)文字测试 ( C)菜单测试 ( D)窗口测试 11 下列评审点是必需的有 _。 ( A)在规定日期进行评审 ( B)当测试主管认为需要进行评审时 ( C)当软件开发过程改变后进行评审时 ( D)当 QA主管认为需要进行评审时 12 在自动化测试过程中,下列活动仍需要手工开展的是 _。 ( A)设置测试环境 ( B)分析失败原因 ( C)执行测试用例 ( D)清除测试环境 13 第三方测试的目的是 _。 ( A)对软件进行验收测试 ( B)提高软件
6、产品的稳定性和可靠性 ( C)减少提交软件系统中的缺陷 ( D)以上全部 14 下列关于软件缺陷状态的定义,不正确的是 _。 ( A) New测试中新报告的软件缺陷 ( B) Open缺陷被确认并分配给相关开发工程师处理 ( C) Fixed测试工程师已完成修正,等待开发人员验证 ( D) Closed缺陷已被修复 15 因果图方法是根据 _ 之间的因果关系设计测试用例。 ( A)输入和输出 ( B)设计和实现 ( C)条件和结果 ( D) 主程序和子程序 16 下列关于逻辑覆盖的叙述中,说法错误的是 _。 A) 对于多分支的判定,判定覆盖要使每一个判定表达式获得每一种可能的值来测试 B) 语
7、句覆盖是比较弱的覆盖标准 C) 语句覆盖较判定覆盖严格,但该测试仍不充分 D) 条件组合覆盖是比较强的覆盖标准 17 软件过程管理最起码的要求是 _。 A) 管理好软件缺陷报告 B) 管理好软件测试用例 C) 管理好测试过程工具 D) 管理好测试说明文档 18 在 QESuite web version 1 0中,如果测试管理人员 试图了解哪些模块存在严重的软件问题,可以使用 A)“严重性 ”视图 B)“按功能分类 ”视图 C)“按状态子状态 ”视图 D)“按子系统状态 ”视图 19 极限编程的主要特点有 _。 A) 简单的分析设计 B) 频繁的客户交流 C) 增量式开发和连续的测试 D) 以
8、上全部 20 针对下列程序段,需要 _个测试用例才可以满足语句覆盖的要求。 Switch(value) Case 0: other=30; Break; Case 1: other=50; Break; Case 2: other=300; Case 3: other=other/value; Break; Default; other=other*value; A) 2 B) 3 C) 4 D) 5 21 依据 GB/T 155322008计算机软件测试规范软件测试应由相对独立的人员进行。以下选项中不属于测试负责人职责的是 _。 A) 管理监督测试项目或测试组 B) 提供技术指导,负责项目的
9、安全保密和质量管理 C) 获取适当资源,技术协调 D) 确定测试计划、测试内容 22 依据 GB/T 15532-2008计算机软件测试规范软件测试应由相对独立的人员进行。测试团队成员包含的工作角色有 _。 A) 测试负责人、测试分析员 B) 测试设计员、测试程序员、测试员 C) 测试系统管理员、配置管理员 D) 以上全是 23 选取足够多的测试数据,使得判定表达式中的每个条件的所有可能取值至少执行一次,而且每个判定表达式的所有可能的判定结果至少执行一次。这种覆盖 测试方法为 _。 A) 逻辑覆盖 B) 语句覆盖 C) 判定覆盖或分支覆盖 D) 判定一条件覆盖 24 下列有关测试执行管理的描述
10、中,错误的是 A) 测试用例执行要求保证测试结果准确完整 B) 对测试结果的追踪应该可追溯到具体责任人 C) 测试执行完成后,并不意味着测试项目的结束 D) 检查完所有测试用例的执行结果是否完整即可结束测试执行 25 下列关于极限测试的说法中,正确的是 _。 ( A)极限测试是一种新型的测试方法,传统的测试技术均不适用于极限测试 ( B)极限测试中所有的测 试均是由编码人员完成的 ( C)与传统的软件测试相比,极限测试是一种更严格的测试 ( D)极限测试需要频繁地进行单元测试 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。
11、26 以下是对 ATM系统的交互功能的描述,请仔细阅读并完成要求。 (1)ATM系统具有取款、查询和修改密码的功能。 (2)进入初始页面,显示提示信息 “请输入密码 ”,若密码正确,则进入系统的主界面,将显示四个可选框:取款、查询、修改密码和退卡;若密码错误, 则返回到初始页面。 (3)选择取款页面,提示请输入取款金额,若金额有效,则吐出相应的现金数目,然后回到主界面;若金额无效,则返回到取款页面。 (4)选择查询页面,显示当前余额,然后回到主界面。 (5)选择修改密码页面,提示输入新密码并确认,完成后再返回到主界面;若设置新密码错误,则返回到修改密码页面。 (6)最后在主界面中选择 “退卡
12、”选项, ATM系统则退卡给储户,操作结束。 画出该交互过程的流程图。 27 27 以下是一个自动饮料售货机软件的操作规 格说明,请按要求回答问题。 设要对一个自动饮料售货机软件进行黑盒测试。该软件的规格说明如下: “有一个处理单价为 1元 5角钱的盒装饮料的自动售货机软件。若投入 1元 5角硬币,按下 “可乐 ”、 “雪碧 ”或 “红茶 ”按钮,相应的饮料就送出来。若投入的是 2元硬币,在送出饮料的同时退还 5角硬币。 ” 28 试利用因果图法,建立该软件的因果图。 29 设计测试该软件的全部测试用例。 30 根据你对单元测试的理解,谈谈在任何情况下单元测试都是可能的吗 ?都是需要的吗 ?
13、30 以下是教材购销系统的描述,请仔 细阅读并按要求回答问题。 某图书管理系统有以下功能: a)借书:输入读者借书证,系统首先检查借书证是否有效。然后检查该读者所借图书是否超过 10本,若已达到,拒借;未达到 10本,办理借书,修改库存并记录。 b)还书:从借书文件中读出与读者有关的记录,查阅所借日期,如果超期 (1个月 )做罚款处理;否则,修改库存目录与借书文件。 c)查询:可通过借书文件、库存目录文件查询读者情况、图书借阅情况及库存。 31 画出该图书管理系统的控制流程图。 32 使用基本路径测试方法确定该状态图的测试路径。 32 以下是班级成绩处理平台的程序流程图,请仔细阅读程序并完成要
14、求。 该平台允许最多输入 100个学生的成绩,以 -1作为输入结束标志。 N2存放输入的学生成绩个数, N1存放输入成绩中有效成绩的个数, sum存放成绩总和。初始化 N2=N1=O, sum=0。计算其中有效的学生分数的个数、总分数和平均值。请针对该程序流程图进行基本路径覆盖测试用例设计。 33 导出过程的控制流图。 34 确定基本测试路径集合。 34 以下是班级成绩处理平台的程序流程图,请仔细阅读程序并完成要求。 该平台允许最多输入 100个学生的成绩,以 -1作为输入结束标志。 N2存放输入的学生成绩个数, N1存放输入成绩中有效成绩的个数, sum存放成绩总和。初始化 N2=N1=O,
15、 sum=0。计算其中有效的学生分数的个数、总分数和平均值。请针对该程序流程图进行基本路径覆盖测试用例设计。 35 导出过程的控制流图。 36 确定基本测试路径集合。 37 一个系统的登录操作规格说明如下: 登录对话框有两个数据输入:用户名和密码,登录操作对两个输入数据进行检查,要求用户名中只能包含字母和数字 (字母不区分大小写 ),密码可以包含任何字符,用户名和密码都不能为空且长度不限。当用户名或密码为空时,则登录失败并提示对应的出错信息;当用户名不正确或用户名不存在的或密码错误时,则登录失败并提示以下三种相应的出错信息:用户名不合法 (即包含有非字母、非数字字符 ),或用户名不存在,或密码
16、错误;当用户名和密码都正确时,则显示登录成功信息,完成登录。 假设正确的用户名是 abcd123,密码是 123456。 使用等价类方法为上述规格说明设计等价类表。 计算机新国家四级软件测试工程师模拟试卷 34答案与解析 一、一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 【正确答案】 A 【试题解析】 软件可靠性和软件可靠性测试的研究在很大程度上借鉴了硬件可靠性的研究,但由于软件和硬件的不同特点导致软件可靠性和硬件可靠性也有很大的不同,这也是软件可靠性研究仍然很不成熟的重要原因。
17、具体而言,软件可靠性和硬件 可靠性的区别包括: 唯一性。软件设计出来后,所有副本都是一模一样的;硬件设计出来后,每个按照设计生产的硬件都不可能完全相同; 物理退化。一个正确的硬件器件会因为物理退化在某时刻失效,但正确的软件则不会因为物理退化而发生失效; 逻辑复杂性。软件具有复杂的内部逻辑,而硬件的内部逻辑则相对简单; 版本更新。硬件的版本更新通常很慢,而软件的版本更新比较频繁。 B说法错误,硬件也有恶意使用者。随着国际化的加深硬件的生产标准越来越统一,使用者也遍布很多地区, C说法错误。硬件失效通常不是逻辑错误导致的,但也有例外, D说法 太过绝对。综合以上,本题应选 A。 2 【正确答案】
18、B 【试题解析】 条件覆盖是指设计若干个测试用例,运行被测程序,使得程序中每个判定的每个条件的可能取值至少评价一次。而判定覆盖是设计测试用例,使得程序中每个判定的取真分支和取假分支至少评价一次。二者没有必然的联系,故满足条件覆盖的未必会满足判定覆盖,选项 B错误。而满足判定覆盖一定会满足语句覆盖是容易理解的,因为每个判定的取真分支和取假分支都至少评价一次必然预示着每个可执行语句至少评价了一次,即满足了语句覆盖。另外指令块覆盖是语句覆盖的一个变体 而 DDP覆盖 (判定路径覆盖 )是判定覆盖的一个变体。 【知识模块】 覆盖率 (白盒 )测试 3 【正确答案】 B 【试题解析】 判定覆盖的定义:设
19、计若干测试用例,运行被测程序,使得程序中每个判定的取真分支和取假分支至少评价一次。针对该题取 a=3、 b=5、 c=1和 a=-1、 b=5、 c=3两组测试用例即可达到 100%的判定覆盖率,故本题选择 B。 【知识模块】 覆盖率 (白盒 )测试 4 【正确答案】 D 【试题解析】 走查着重从流程的角度考查程序,借助程序流程图或调用图对数据流和控制流进行 静态分析,在调用图中,结点表示程序单元,有向边表示程序单元之间的控制和调用,通过调用图我们可以检查程序中变量的说明和引用、全局变量、参数误用等问题,同时还为动态测试用例的设计提供可靠的依据,注意在调用图中是不能对程序进行修改的。 【知识模
20、块】 代码检查、走查与评审 5 【正确答案】 C 【试题解析】 软件设计是软件工程的技术核心,在设计阶段中,设计人员把经评审通过的各项需求转换为一个相应的体系结构,包括数据的体系结构、系统和软件的体系结构。结构中每一组成部分都是一个模块,每个模块都是和某种需 求相对应,即所谓概要设计和高层设计。进而对每个模块要完成的任务进行具体描述,为后面的编程打基础,即所谓详细设计。 【知识模块】 软件测试类型及其在软件开发过程中的地位 6 【正确答案】 C 【试题解析】 可跟踪性分析是标识原始需求和相应开发结果之问关系的能力。关键性分析是在整体上分析整个资源的分配策略。 A、 B选项说法应互换。评估不仅仅
21、要对最终的软件产品进行评估,而是软件开发各个阶段都需要进行的, D说法错误。 【知识模块】 软件测试的基本概念 7 【正确答案】 B 【知识模块】 功能 (黑盒 )测试 8 【正确答案】 B 【知识模块】 功能 (黑盒 )测试 9 【正确答案】 D 【知识模块】 面向对象软件的测试 10 【正确答案】 A 【知识模块】 其他测试 11 【正确答案】 C 【知识模块】 软件测试过程和管理 12 【正确答案】 B 【知识模块】 软件自动化测试 13 【正确答案】 D 【知识模块】 软件测试实践 14 【正确答案】 C 【知识模块】 软件测试实践 15 【正确答案】 A 【试题解析】 因果图方法是根
22、据输入和输出之间的因果关系设计测试用例的。 16 【正确答案】 C 17 【正确答案】 A 18 【正确答案】 B 【试题解析】 在 QESuite web Version 1 0中,可以监控软件问题报告处理过程和软件系统各模块软件问题分布状况。测试管理人员使用 “严重性 ”视图,可以了解当前软件问题的严重性分布;使用 “按功能分类 ”视图查看软件问题分布情况,可以了解哪些模块存在严重的软件问题;使用 “按状态子状态 ”视图,可以了解当前所有软件问题的处理状态;使用 “按子系统状态 ”视图 ,可以了解各个部分软件问题的数量情况,及时调整开发人员修复和测试人员验证的工作方向。故本题答案为 B。
23、19 【正确答案】 D 【试题解析】 极限编程,只经过简单的分析和设计就进入到编码阶段,而在编码过程中强调对已有代码的测试和开发人员与客户的交互。相对传统的软件开发方法,极限编程有很多主要特点,主要包括:简单的分析设计,频繁的客户交流,采用增量式开发方式,进行连续的测试。 20 【正确答案】 C 21 【正确答案】 D 22 【正确答案】 D 23 【正确答案】 D 24 【正 确答案】 D 25 【正确答案】 D 【试题解析】 20世纪 90年代 Kent Beck提出了极限编程的新型软件开发方法,该方法主要目的是利用轻量、便捷的开发过程使得开发人员能够更快地完成应用程序的开发。与传统的软件
24、开发方法相比,开发效率高,但代码质量得不到保证,为此出现了极限测试为极限编程量身定做的测试方式,即通过频繁地单元测试和验收测试来保证代码质量。在极限测试中,单元测试主要由编码人员完成,验收测试则主要由用户完成。极限编程的主要缺点在于编码人员的自由度过大,由于没有严格的需求和设计规范,所以 极限测试没有传统的软件测试严格。单元测试是极限编程中最重要的发现缺陷的手段,在极限编程中的单元测试与传统的单元测试基本类似,所以有些传统的测试技术也可以用到极限测试中来,而且极限测试的本质是为了满足极限编程的思想和流程而设计的一套测试策略和流程,其本身并不局限于使用特定的技术和方法,所以传统的测试技术和方法大
25、多数都可以在极限测试中使用。 二、二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。 26 【正确答案】 27 【正确答案】 理由: (1)题中说产生四个版本,应该把四个版本都考虑进去,还有最后一个,要用最新的版本进行测试。如果用 “解决 ”以前的版本进行测试,并不能反映真实的情况。用最新的版本进行测试,有问题才修改状态为 “打开再现 ”,证明这个错误并没有真正解决。 (2)操作序号 1中,一般测试人员只能提交新的软件问题入库,并将其状态置为 “新建 ”,该行 “操作后问题状态 ”应为 “新建 ”。 (3)操作序号 4中,测试人员查
26、询状态为“待验 ”的软件问题,验证是否修复。如果已修复,则置软件问题状态为 “解决 ”;如果没有解决,则置状态为 “打开 ”。该行 “操作后的 问题状态 ”应为 “解决修复 ”。 (4)操作序号 5中,在以后的测试版本中,如果该问题重新出现,测试人员应该重新打开此问题,并将问题状态更改为 “打开再现 ”。 28 【正确答案】 首先分析软件中出现的所有原因和结果,并将其标号。 原因: 1投入 1元 5角硬币 2投入 2元硬币 3按 “可乐 ”按钮 4按 “雪碧 ”按钮 5按“红茶 ”按钮 结果: 21退还 5角硬币 22送出 “可乐 ”饮料 23送出 “雪碧 ”饮料 24送出 “红茶 ”饮料 中
27、间状态: 11已投币 12已按钮 然后根据上述原因和结果,以及各状态问 的关系,画出因果图,如下图所示。29 【正确答案】 30 【正确答案】 单元测试又称模块测试,是针对软件设计的最小单位 程序模块,进行正确性检验的测试工作。其目的在于发现各模块内部可能存在的各种差错。单元测试需要从程序的内部结构出发设计测试用例。多个模块可以平行地独立进行单元测试。 单元测试是在编码阶段完成的,每编写出一个程序模块,就开始做这个模块的单元测试,所以只要采用模块化方法设计开发的软件,单元测试都是必需的。这时单元测试通常由编写程序的人来完成。因为它需要根据程序的内部逻辑结构 设计测试用例,对于那些不了解程序内部
28、细节的人,单元测试无法进行。 31 【正确答案】 32 【正确答案】 路径覆盖的独立路径为: 开始 选择操作 借书 N -10结束; 开始 选择操作 借书 N 10办理借书 修改库存 结束; 开始 选择操作 还书 超期 罚款处理 修改记录 结束; 开始 选择操作 还书 未超期 修改记录 结束; 开始 选择操作 查询 返回查询内容 结束。 33 【正确答案】 该程序的 过程控制流图如下。 34 【正确答案】 该过程该过程控制流图的圈复杂性度量 G(V)为 4(区域数,或者G(V)=E N+2) 所以基本路径集合包含四条独立的路径: 1-2-6-7-9 1-2-6-8-9 1-2-3-4-5-2-6-7-9 1-2-3-4-10-2-6-7-9 35 【正确答案】 该程序的过程控制流图如下。 36 【正确答案】 该过程该过程控制流图的圈复杂性度量 G(V)为 4(区域数,或者G(V)=E N+2) 所以基本路径集合包含四条独立的路径: 1-2-6-7-9 1-2-6-8-9 1-2-3-4-5-2-6-7-9 1-2-3-4-10-2-6-7-9 37 【正确答案】 设计等价类