1、计算机新国家四级软件测试工程师模拟试卷 1及答案与解析 一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 下列关于软件质量模型的说法中正确的是 _。 ( A)外部质量是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力的产品属性的全体 ( B)容错性、通用性、结构性和通信性不全属于软件的质量特性 ( C)内部质量是表征软件产品在规定条件下使用时,满足规定的和隐含的要求的程度 ( D)使用质量是软件产品在规定的使用环境中,规定的用户能实现规定目标的要求 2 软件验证和确
2、认理论是测试过程的理论依据,具中确认是检查我们是否在建成一个正确的产品,它强调的是 _。 ( A)过程的正确性 ( B)产品的正确性 ( C)测试的正确性 ( D)规格说明的正确性 3 根据软件体系结构的设计,按照一定顺序将经过单元测试的程序单元逐步组装为了系统或系统,这种测试是 _。 ( A)系统测试 ( B)单元测试 ( C)集成测试 ( D)验收测试 4 自顶向下单元测试的策略是首 先刘模块调用哪一层模块进行测试 _。 ( A)最底层 ( B)下一层 ( C)最高层 ( D)上一层 5 一般来说,与设计测试用例无关的文档是 _。 ( A)需求规格说明书 ( B)程序的复杂程度 ( C)源
3、程序 ( D)项目开发计划 6 在黑盒测试中,着重检查输入条件的组合是 _。 ( A)等价类划分法 ( B)边界值分析法 ( C)错误推测法 ( D)因果图法 7 如果一个判定中的复合条件表达式为 (A 10)or(B =7),则为了达到 100%的判定覆盖率,至少 需要设计多少个测试用例 _。 ( A) 1个 ( B) 2个 ( C) 3个 ( D) 4个 8 单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是 _。 ( A)系统功能 ( B)局部数据结构 ( C)重要的独立路径 ( D)出错处理 9 下列关于逻辑覆盖,说法错误的是 _。 ( A)满足条件覆盖并不一定满足判定
4、覆盖 ( B)满足条件组合覆盖的测试一定满足判定覆盖、条件覆盖和判定 /条件覆盖 ( C)满足路径覆盖也一定满足条件组合覆盖 ( D)满足判定 /条件覆盖 同时满足判定覆盖和条件覆盖 10 评审是对软件进行静态测试的一种方法,下列结论中, _是与软件评审无关的内容。 ( A)尽量发现错误 ( B)根据评审标准 ( C)依靠测试信息 ( D)检查软件文档 11 Myers提出的软件缺陷的群集现象指的是 _。 ( A)在软件测试过程中,缺陷不会少量出现,而会成群的出现 ( B)在测试一个功能部件的过程中,通常一次会发现很多缺陷 ( C)在测试的各个功能部件中,一般不是没有发现缺陷,就是发现许多缺陷
5、 ( D)一个功能部件已发现的缺陷越多,找 到它的更多未发现的缺陷的可能性就越大 12 在北京某个银行的人事信息管理软件中,系统允许用户输入 8位数字的北京市电话号码。若使用等价类划分法设计测试用例,获得输入等价类,那么从保证测试效果的角度来看,下面最佳的测试用例选择应为 _。 ( A) 62570007, 80603805, 100080, 39103825 ( B) 6,257,000,780,603,800 ( C) 62570007, 39103825, 8253324,空值, h? ( D) 39103825, 8253324, 1391092300 13 下列叙述中,说法错误的是
6、_。 ( A)不应该采用模块化方法开发自动测试脚本 ( B)自动测试一般要求被测试的应用系统相对稳定 ( C)应尽量使单元测试自动化 ( D)自动测试脚本可能包含错误,也需要进行维护 14 单元测试时,用于代替被调用模块的是 _。 ( A)桩模块 ( B)通信模块 ( C)驱动模块 ( D)代理模块 15 在实际测试中,软件性能的高低往往直接取决于 _。 ( A)用户对响应时间的接受程度 ( B)响应时间的绝对值 ( C)系统响应时 间 ( D)所有功能的最大响应时间 16 在软件的各部件组成逻辑都相对简单的情况下,对其进行软件可靠性分析通常最好选择运用下面哪一种软件可靠性分析方法 _。 (
7、A)故障树分析 ( B)严酷度分析 ( C)失效模式影响分析 ( D)潜在线路分析 17 下列关于面向对象程序的测试组织问题的说法中,正确的是 _。 ( A)在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试三个主要方面 ( B)在面向对象程序中的一个类可以作为被独立测试的单元 ( C) 在面向对象程序测试中,很容易对一个类中的单个成员方法进行充分的单元测试 ( D)由于集成测试目标相同,结构化程序的集成测试技术都适用于对类的测试 18 下列不属于 Web应用软件的特征的是 _。 ( A)内容驱动 ( B)开发周期短 ( C)美观性要求较高 ( D)安全性要求
8、较低 19 下列关于 Web应用软件测试的说法中,正确的是 _。 ( A)排版结构测试是 Web应用软件易用性测试的重要内容 ( B)对于数据完整性的测试是 Web应用软件业务层测试的重要内容 ( C) Cookie测 试是 Web应用软件功能测试的重要内容 ( D)对 Web应用软件进行系统测试时不必考虑性能测试 20 下列不属于兼容性要考虑的方面是 _。 ( A)硬件兼容性 ( B)软件兼容性 ( C)程序兼容性 ( D)数据兼容性 21 下列选项中,不属于软件功能易用性测试关注的内容是 _。 ( A)软件是否能帮助用户减少重复的输入劳动 ( B)软件是否能在耗时较长的操作期间提供反馈 (
9、 C)软件是否允许用户针对自己的使用习惯进行定制 ( D)软件界面中文字的显示风格 22 下列关于极限测 试,说法不正确的是 _。 ( A)相对传统的软件开发方法,极限编程可以随时应对新增或改变的需求 ( B)极限编程的单元测试是由编码人员完成的测试 ( C)极限编程要求在编码之前先设计测试 ( D)验收测试由用户来完成,编码人员不必在现场 23 下列有关软件问题生命周期模型状态定义的说法中,错误的是 _。 ( A) “新建 ”表示测试中发现并报告了新的软件问题 ( B) “打开 ”表示软件问题已经被确认并分配测试工程师处理 ( C) “关闭 ”表示软件问题已被确认为无效的软件问题 ( D)
10、“解决 ”表示软件问题已被确认修复 24 软件测试过程可持续改进的根本是 _。 ( A)度量与分析 ( B)变更控制 ( C)把握需求 ( D)度量 25 在 QESuite Web Version 1.0中,测试管理人员可以使用 _视图,了解哪些模块存在严重的软件问题。 ( A) “按功能分类 ”视图 ( B) “按状态 /子状态 ”视图 ( C) “按子系统 /状态 ”视图 ( D) “严重性 ”视图 二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。 26 论述题 1:以下是某应用程序的规格描述,请按要求回答问题 程序规则:实
11、现某城市的电话号码,该电话号码由三部分组成。它的说明如下:区号空白或 3位数字;前缀非 “0”或 “1”开头的 3位数字;后缀 4位数字。 (1)请分析该程序的规则说明和被测程序的功能 (2)采用等价类划分方法设计测试用例。 27 论述题 2:你认为应该由谁来进行确认测试 ?是软件开发者还是软件用户 ?为什么 ? 28 论述题 3:以下电费计算的几条规则,请按要求回答问题 一些城市的电力公司把用户分为两类:单费率用户和复费率用户。对于单费率 用户实行单一电价,即在任何时间短都是一个价;对于复费率用户在不同时段实行不同的电价。有 4条计算电费的规则:对于单费率用户,按公式 A计算电费;对于复费率
12、用户,如果不在规定期间内,同单费率用户,按照公式 A计算电费,否则按公式 B计算;如果既不是单费率用户也不是复费率用户,则做其他处理。 (1)根据上述要求,设计判定表。 (2)根据上述判定表设计测试用例,尽量使其覆盖所有的情况。 计算机新国家四级软件测试工程师模拟试卷 1答案与解析 一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选 项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 【正确答案】 D 【试题解析】 外部质量是针对要求的满足程度而言的,是表征软件产品在规定条件下使用时,满足规定的和隐含的要求的程度,而内部质量则主要是根
13、据软件产品的情况给出的,内部质量是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力的产品属性的全体。故选项 A和 C叙述刚好颠倒,选项B中的性质都是属于软件的质量特性的,而选项 D中关于使用质量的叙述是完全正确的。 2 【正确答案】 B 【试题解析】 验证是 检查我们是否正在正确地建造一个产品,它强调的是过程的正确性;而确认是检查我们是否在建成一个正确的产品,它强调的是产品的正确性。 3 【正确答案】 C 【试题解析】 软件测试生存周期模型描述了软件测试的全过程:单元测试、集成测试、系统测试、验收测试和回归测试等。 当一个程序单元编写出来之后,首先要做的就是及时对其进行单元测
14、试,检查该程序单元中的各种缺陷,并通过调试改正它们,然后进行回归测试,检查这些缺陷是否确实得到修正。集成测试是根据软件体系结构的设计,按照一定顺序将经过单元测试的程序单元逐步组装为 子系统或系统,该过程可以与单元测试穿插进行。系统测试是根据软件需求规格说明,在开发环境下对已经集成的软件系统进行测试,确认各项规定的需求是否在系统中实现,各种质量要求在系统中是否达到预期的标准。 验收测试是对已经确认的软件系统进行的测试,在实际使用环境中,与计算机系统的其他系统元素进行一系列系统级的集成测试和测试。 4 【正确答案】 C 【试题解析】 自底向上测试与自顶向下测试策略都是增量式的测试,软件是分层设计的
15、,主模块调用子模块,子模块又依次调用更低层次的模块,依此类推。在自底向上单元测 试的策略中,应首先测试最底层的模块,利用辅助的测试驱动模块调用它们并传递测试数据,然后再测试更高层次的模块,再较高层次的模块测试中可以直接调用已测试过的较低层次的模块。在自顶向下测试中,首先测试的则是顶层模块,无须编写驱动模块,但要使用桩模块,当项层模块被证明无误后,再测试下一个高层次的模块。 5 【正确答案】 D 【试题解析】 在各个时期进行的软件测试,其依据都是不同的,测试用例的设计应该与各个时期的文档有关,故测 试用例的设计与需求规格说明书、程序复杂程度、源程序都是有关的。而项目的开发计划是为程序的开发做准备
16、的,与测试无关。 6 【正确答案】 D 【试题解析】 在黑盒测试中,这些测试策略基本上都要考虑输入条件的组合,但是基于因果图的方法就是着重检查输入条件组合的一种测试方法。 7 【正确答案】 B 【试题解析】 题目要求达到 100%的判定覆盖率,即要求所有的判定真假都至少执行一次,故我们取定 (A=12, B=7)和 (A=7, B=10)两组测试用例,即可满足题目要求。 8 【正确答案】 A 【试题解析】 单元测试主要从下面五个基本特征进行测试,分别是:模块接口、局部数据结构、独立路径和出错处理。故不能完成的测试是系统功能,这通常是在系统测试时进行的。 9 【正确答案】 C 【试题解析】 考察
17、各种逻辑覆盖的关系: 条件组合覆盖判定覆盖,语句覆盖 (即如果达到条件组合覆盖,就达到判定覆盖和语句覆盖;如果达到判定覆盖,就达到语句覆盖,下面类似理解 )。 条件组合覆盖,条件覆盖。 条件覆盖不一定包含判定覆盖、语句覆盖。 判定覆盖不一定包含条件覆盖。 路径覆盖,判 定覆盖,语句。 10 【正确答案】 C 【试题解析】 评审是一种软件开发前期阶段人工测试的方法,主要是发现缺陷,并通过评审标准检查软件文档,故选项 A、选项 B和选项 D都与软件评审有关。而评审这一阶段是不需要依靠测试信息的。 11 【正确答案】 D 【试题解析】 Myers提出的软件缺陷的群集现象是指:测试后程序中残余的错误数
18、目与该程序中已发现韵错误数目成正比。即一个功能部件已发现的缺陷越多,找到它的更多未发现的缺陷的可能性就越大。 12 【正确答案】 C 【试题解析】 根据等价 类划分法设计测试用例的原则。 13 【正确答案】 A 【试题解析】 自动测试脚本最好采用模块化方法。 14 【正确答案】 A 【试题解析】 在单元测试时,程序员必须编写一个驱动模块,用来调用被测模块并向其传送测试数据,若该模块调用了其他模块,程序员必须编写一个桩模块,用来代替被调用的模块。 15 【正确答案】 A 【试题解析】 软件的性能是软件的一种非功能特性,响应时间是软件性能指标之一,响应时间是指系统对请求作出响应的时间,对于单机的没
19、有并发操作的应用系统而言,人们普遍认为响 应时间会是一个合理且准确的性能指标,但是要指出的是,在实际测试中,响应时间的绝对值并不能直接反映软件性能的高低,软件性能的高低实际上取决于用户对响应时间的接受程度。 16 【正确答案】 C 【试题解析】 软件可靠性分析方法主要有:失效模式影响分析、严酷度分析、故障树分析、事件树分析和潜在线路分析。其中失效模式影响分析 (FMEA)的基本假设是产品本身的逻辑没有故障,但其各部件出现的故障可能会导致产品出现故障,所以,该方法的思路是通过分析产品与其各个部件的逻辑,从而分析出各个部件的故障对整个产品可靠性 的影响。故在软件的各部件组成逻辑都相对简单的情况下,
20、采用该方法是最适合的。 17 【正确答案】 A 【试题解析】 在面向对象程序测试中,通过执行程序代码完成的测试通常包括单元测试、集成测试和系统测试三个主要方面。其中单元测试的基本要求是被测单元被独立地测试,而在测试面向对象程序时,由于一个类的各个成员方法通常是相互联系的,因而很难对一个类中的单个成员方法进行充分的单元测试。面向对象程序中的一个类甚至也不能作为被独立测试的单元,主要原因一方面是由于继承的存在,一个类通常依赖于其父类和其他祖先类,另一 方面由于面向对象程序经常出现多个类相互依赖也会导致每个类难以被独立的测试。集成测试是针对程序的集成结构进行,在面向对象程序中,许多集成机制在传统结构
21、化程序中没有,因而结构化程序的集成测试技术难以适用于对类的测试。 18 【正确答案】 D 【试题解析】 Web应用软件与其他的应用软件有较大的差别,其特点有 基于无连接协议, 内容驱动, 开发周期短, 演化频繁, 安全性要求较高, 美观性要求较高。 19 【正确答案】 C 【试题解析】 Web应用软件的系统测试除了功能测试外还包括性能测试、易 用性测试、内容测试、安全性测试和接口测试等。功能测试主要包括: 连接测试, 表单测试, Cookie测试,故选项 C正确。由于排版结构的测试是 Web应用软件表示层的测试,故 A不正确。而对数据完整性的测试是 Web应用软件数据层的测试,故选型 B不正确
22、。对于 Web应用软件而言,性能测试是一个至关重要的因素,所以对 Web应用软件进行系统测试时,必须考虑性能测试,故 D说法错误。 20 【正确答案】 C 【试题解析】 所谓兼容性测试,是指针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期望的环境中运 行。在大多数情况下,兼容性测试主要考虑硬件兼容性、软件兼容性和数据兼容性三个方面。 21 【正确答案】 D 【试题解析】 功能易用性是指用户能否方便、快速、准确地使用软件提供地功能来完成需要完成的任务。一般功能易用性测试涉及面很广,其主要内容有; 业务符合度, 功能定制性, 功能的关联度, 数据的共享度, 用户约束的合理性, 反馈的
23、及时性。 22 【正确答案】 D 【试题解析】 极限编程强调灵活的分析和设计,极限编程与传统软件开发方法相比,有四个主要特征: 简单地分析设计, 频繁地客户交 流, 增量式开发, 连续的测试。这些特征决定了极限编程可以随时应对新增或改变的需求。单元测试是极限编程中最重要的发现缺陷的手段,主要由编码人员来完成,验收测试主要由用户来完成,但编码人员也必须在场,以便与用户进行交流。另外极限编程要求在编码之前先设计测试,因为这样可提高编码人员测试自己编写代码的效率。 23 【正确答案】 B 【试题解析】 软件问题的状态定义如下: 新建 (New)测试中新报告的软件问题 打开 (Open)软件问题已被确
24、认并分配给相关开发工程师处理 关闭 (Closed)确认为无效的软件问题 待验 (Pending)工程师已完成修正,等待测试人员验证 解决 (Resolved)软件问题已被修复 24 【正确答案】 A 【试题解析】 在软件系统开发过程中,度量与分析同样体现的是 “全过程测试 ”理念,对测试过程的度量有利于及时把握项目情况,对过程数据进行分析,很容易发现优势和劣势,找出需要改进的地方,及时调整测试策略。所以说度量与分析是软件测试过程可持续改进的根本。 25 【正确答案】 A 【试题解析】 在 QESuite Web Version1.0中,可以监控软件问题报告处理过程和软件系统各模块软件问题布状
25、况,测试管理人员使用 “按功能分类 ”视图查看软件问题分布情况,可以了解哪些模块存在严重的软件问题。使用 “按状态 /子状态 ”视图可以了解当前所有软件问题的处理状态。使用 “按子系统 /状态 ”视图可以了解各个部分软件问题的数量情况,及时调整开发人员修复和测试人员验证的工作方向。使用 “严重性 ”视图可以了解当前软件问题的严重性分布。 二、论述题( 3题,共 50分 ) 论述题答题必须用蓝、黑色钢笔或圆珠笔写在论述题答题纸的相应位置上,否则无效。 26 【正确答案】 问题 1:解答:首先分析程序的规则说明和被测程序的功能,将其划分等价类并编号,如下:有效等价类输入: (1)区号:空白; (2
26、)区号: 3位数字; (3)前缀:从 100 999的 3位数字; (4)后缀: 4位数字。无效等价类输入: (5)区号:有非数字字符; (6)区号:少于 3位数字; (7)区号:多于 3位数字; (8)前缀:有非数字字符; (9)前缀:起始位为 “0”; (10)前缀:少于 3位数字; (11)前缀:多于 3位数字; (12)后缀:有非数字字符; (13)后缀:少于 4位数字; (14)后缀:多于 4位数字。问 题 2:根据上述等价类的划分,设计测试用例,如表 17-5所示。表17-5 无效的测试用例输入,如表 17-6所示。 【试题解析】 首先分析程序的规则说明和被测程序的功能,将其输入情
27、况划分为有效等价类和无效等价类,然后按照等价类设计测试用例的方法设计有效的测试用例和无效的测试用例。 答案: 27 【正确答案】 在对照需求做功能测试和软件配置复审时,是由软件开发者在开发环境下进行的测试。而接下来做验收测试时则以用户为主。软件开发人员和QA(质量保证 )人员也应参加。由用户参加设计测试用例,使用用户界面输 入测试数据,并分析 测试的输出结果。一般使用生产中的实际数据进行测试。 如果软件是为多个客户开发的,则需要进行 a测试和 测试。 a测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。软件在一个自然设置状态下使用。开发者坐在用户旁边
28、,随时记下错误情况和使用中的问题。这是在受控制的环境下进行的测试。 测试是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。这些用户是与公司签定了支持产品预发行合同的外部客户,他们要求使用该产品,并愿意返回有关错误信息给开发者。与 a测试不同的是,开发者通常不在测试现场。因而, 测试是在开发者无法控制的环境下进行的软件现场应用。 【试题解析】 首先搞清楚确认性测试的含义及整个测试过程,在确认测试阶段主要任务是确认软件的有效性,即确认软件的功能和性能及其他特性是否与用户的要求一致。该阶段需要做的工作包括功能测试和软件配置复审。具体由谁来执行,应根据阶段不同而不同。 28 【正确答案】 (1)根据题意设计判定表,如表 17-7所示。表 17-7 电费计算的判定表 (2)由判定表设计测试用例时,要求覆盖所有规则,一般针对每个规则设计一个 测试用例。对于该测试用例以规则所对应的条件为要求满足的输入条件,并以规则所对应的动作为预期结果。根据判定表可以设计 4个测试用例,它们分别覆盖规则 1 4,如表 17-8所示。【试题解析】 首先根据电费计算的规则,列出相关的条件以及动作,画出判定表,然后再根据黑盒测试中基于判定表的测试方法设计测试用例。