1、计算机四级软件测试工程师-43 及答案解析(总分:100.01,做题时间:90 分钟)一、选择题(总题数:25,分数:50.00)1.兼容性测试是指(分数:2.00)A.检测软件与其他软件是否能正常进行信息的交流和传递B.测试本款软件与其他应用软件是否能在同一操作系统下运行C.针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期望的环境中进行D.以上都不对2.下列选项中,属于软件缺陷的基本状态的是(分数:2.00)A.激活状态B.关闭或非激活状态C.已修正状态D.以上全部3.在集成测试时,能较早发现高层模块接口错误的测试方法是(分数:2.00)A.系统测试方法B.自底向上渐增式测试方
2、法C.非渐增式测试方法D.自顶向下渐增式测试方法4.下列选项中不属于软件可靠性和硬件可靠性的主要区别的是(分数:2.00)A.唯一性B.物理退化C.使用人员的不同D.逻辑复杂性和版本更新5.依据 QESuite Web Version 1.0 软件问题生命周期定义,对于一个处在“新建”状态的软件问题报告,下列四个选项中,不可能出现的操作是(分数:2.00)A.关闭B.验证C.校验D.分类与分配/提供信息6.软件测试过程可持续改进的根本是(分数:2.00)A.度量B.把握需求C.变更过程D.度量与分析7.如果一个判定中的复合条件表达式为(M1)or(N=3),则为了达到 100%的条件覆盖率,至
3、少需要设计的测试用例个数为(分数:2.00)A.1B.2C.3D.48.软件测试管理包括测试过程管理、配置管理和(分数:2.00)A.测试用例管理B.测试实施管理C.测试评审管理D.测试计划管理9.单元测试与系统测试的区别是(分数:2.00)A.单元测试采用白盒测试方法,系统测试采用黑盒测试方法B.在测试时间上,系统测试晚于单元测试C.单元测试从开发者角度考虑问题,而系统测试从用户角度考虑问题D.以上全部10.软件测试的目的是(分数:2.00)A.软件编写完成后的后续工作B.寻找软件缺陷而执行程序的过程C.使软件能更好工作D.保证程序能完全正确的被执行11.下列关于覆盖率的使用原则,描述错误的
4、是(分数:2.00)A.覆盖率不是目的,只是一种手段B.只考虑一种覆盖率指标是不恰当的C.应该追求绝对 100%的覆盖率D.不可能针对所有的覆盖率指标去进行测试12.属于白盒测试最常用的测试用例技术的是(分数:2.00)A.逻辑覆盖B.等价类法C.错误猜测法D.使用综合测试策略13.下列选项中不属于性能计数器的分析技术的是(分数:2.00)A.内存分析B.进程分析C.处理器分析D.通信中断分析14.场景测试方法是基于 IBM 公司推行的 RUP 的测试用例生成方法,该方法的出发点是(分数:2.00)A.用例B.事件流C.控制流D.数据流15.下列选项中不属于静态错误分析的是(分数:2.00)A
5、.功能分析B.引用分析C.类型和单位分析D.表达式分析16.测试计划活动中最关键的一步是(分数:2.00)A.收集信息B.确定测试需求和测试层次C.内部审查D.测试计划的定稿和批准17.在需求获取与定义阶段就开始建立,以后要不断地细化和完善的文档是(分数:2.00)A.用户手册B.测试计划手册C.内部设计规格说明D.外部设计规格说明18.一般来说,大多数软件缺陷源于软件开发项目的(分数:2.00)A.软件测试阶段B.程序编写和调试阶段C.加班工作期间D.需求和设计阶段19.关于 Web 应用软件的特点,下列描述中错误的是(分数:2.00)A.内容驱动B.基于无连接协议C.安全性要求较高D.开发
6、周期长,演变较慢20.黑盒测试方法主要用于测试(分数:2.00)A.软件外部功能B.程序正确性C.结构合理性D.程序的内部逻辑21.国际标准化组织公布的国际标准 ISO 8402 将软件质量综合定义为(分数:2.00)A.反映实体满足明确的和隐含的需求的能力的特性的总和B.表征软件产品满足明确的和隐含的需求的能力的特性或特征的集合C.软件产品满足明确的需求的程度的一组属性的集合D.表征计算机系统卓越程度的所有属性的集合22.下列关于面向对象程序的单元测试的说法中错误的是(分数:2.00)A.面向对象程序的单元测试中可独立被测试的单元是一个类族B.面向对象程序的单元测试中可独立被测试的单元也可能
7、是一个独立的类C.面向对象程序的单元测试分为方法层次、类层次和类树层次的测试D.面向对象程序的单元测试与面向过程的单元测试目的相同23.下列不属于软件兼容性测试的考虑范畴的是(分数:2.00)A.与浏览器的兼容性B.与平台软件的兼容性C.与外设的兼容性D.与操作系统的兼容性24.关于 Web 应用软件基本结构,客户端主要有(分数:2.00)A.浏览器B.HTML 文档C.客户端程序D.以上全部25.下列有关软件问题生命周期模型中状态定义的说法,正确的一项是(分数:2.00)A.“关闭”表示工程师已经完成修正,等待测试人员验证B.“打开”表示软件问题已经被确认并分配给相关开发工程师处理C.“解决
8、”表示确认为无效的软件问题D.“待验”表示软件问题已经被修复二、论述题(总题数:3,分数:50.00)26.以下是对 ATM 系统的交互功能的描述,请仔细阅读并完成要求。(1)ATM 系统具有取款、查询和修改密码的功能。(2)进入初始页面,显示提示信息“请输入密码”,若密码正确,则进入系统的主界面,将显示四个可选框:取款、查询、修改密码和退卡;若密码错误,则返回到初始页面。(3)选择取款页面,提示请输入取款金额,若金额有效,则吐出相应的现金数目,然后回到主界面;若金额无效,则返回到取款页面。(4)选择查询页面,显示当前余额,然后回到主界面。(5)选择修改密码页面,提示输入新密码并确认,完成后再
9、返回到主界面;若设置新密码错误,则返回到修改密码页面。(6)最后在主界面中选择“退卡”选项,ATM 系统则退卡给储户,操作结束。画出该交互过程的流程图。(分数:8.00)_以下是 QESuite Web Version 1.0 用户手册的相关内容,请仔细阅读并按要求回答问题。1.下表是测试用的规格说明,请阐述测试用例的定义及相关内容。域名 描述编号是创建测试用例时由系统生成的,唯一的,且在测试用例的生命周期中保持不变的显示域项目 当前的被测项目标题,便于用户了解当前的被测试项目是什么标题 简单描述被测试区域的测试目标,不能超过 50 个字,此域必须填写测试状态 标明测试用例是否已进入一个活动的
10、测试任务中创建者是创建测试用例时的用户名,自动填写,在测试用例的生命周期中保持不变的显示域创建日期是创建测试用例时的日期,自动填写,在测试用例的生命周期中保持不变的显示域修改者 记录最后一次修改测试用例的用户名,自动填写修改日期 是最后一次修改测试用例时的日期,自动填写(分数:16.00)_假设栈 Stack 的容量是 2,栈元素的数据类型是 char 类型,该栈对象有三种状态,分别为:S1栈空状态;S2非空非满状态;S3栈满状态。转换到各个状态的条件如下。S1:(c0)创建并初始化栈。(c1)在 S2 下执行置空运算 Clear()。(c2)在 S2 下执行出栈运算 Pop()。(c3)在
11、S3 下执行置空运算 Clear()。S2:(c4)在 S1 下执行进栈运算 Push()。(c5)在 S3 下执行出栈运算 Pop()。S3:(c6)在 S2 下执行进栈运算 Push()。要求:1.根据题设条件,画出栈对象的状态迁移图。(分数:26.01)_计算机四级软件测试工程师-43 答案解析(总分:100.01,做题时间:90 分钟)一、选择题(总题数:25,分数:50.00)1.兼容性测试是指(分数:2.00)A.检测软件与其他软件是否能正常进行信息的交流和传递B.测试本款软件与其他应用软件是否能在同一操作系统下运行C.针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期
12、望的环境中进行 D.以上都不对解析:解析 兼容性测试是指针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期望的环境中运行。通常兼容性测试主要需要考虑硬件、软件和数据三个方面。2.下列选项中,属于软件缺陷的基本状态的是(分数:2.00)A.激活状态B.关闭或非激活状态C.已修正状态D.以上全部 解析:3.在集成测试时,能较早发现高层模块接口错误的测试方法是(分数:2.00)A.系统测试方法B.自底向上渐增式测试方法C.非渐增式测试方法D.自顶向下渐增式测试方法 解析:解析 自顶向下测试的特点决定了该集成测试方法是能够较早发现高层模块接口错误的。4.下列选项中不属于软件可靠性和硬件可靠
13、性的主要区别的是(分数:2.00)A.唯一性B.物理退化C.使用人员的不同 D.逻辑复杂性和版本更新解析:解析 软件可靠性和硬件可靠性的主要区别体现在:唯一性、物理退化、逻辑复杂性和版本更新。5.依据 QESuite Web Version 1.0 软件问题生命周期定义,对于一个处在“新建”状态的软件问题报告,下列四个选项中,不可能出现的操作是(分数:2.00)A.关闭B.验证 C.校验D.分类与分配/提供信息解析:解析 依据 QESuite Web Version 1.0 软件问题生命周期定义,处在“新建”状态的软件问题报告,可以有的操作为校验、关闭、分类与分配/提供信息,故选项 B 符合题
14、意。6.软件测试过程可持续改进的根本是(分数:2.00)A.度量B.把握需求C.变更过程D.度量与分析 解析:解析 在软件系统开发过程中,度量与分析体现的是“全过程”测试理念,对测试过程的度量有利于及时把握项目的情况等。因此,度量与分析是软件测试过程可持续改进的根本。7.如果一个判定中的复合条件表达式为(M1)or(N=3),则为了达到 100%的条件覆盖率,至少需要设计的测试用例个数为(分数:2.00)A.1B.2 C.3D.4解析:解析 由条件覆盖的定义可知:设计若干测试用例,运行被测程序,使得每个判定的每个条件的可能取值至少评价一次。根据本题目要求,取 M=3,N=3 和 M=0,N=5
15、 两组用例即可。8.软件测试管理包括测试过程管理、配置管理和(分数:2.00)A.测试用例管理B.测试实施管理C.测试评审管理 D.测试计划管理解析:9.单元测试与系统测试的区别是(分数:2.00)A.单元测试采用白盒测试方法,系统测试采用黑盒测试方法B.在测试时间上,系统测试晚于单元测试C.单元测试从开发者角度考虑问题,而系统测试从用户角度考虑问题D.以上全部 解析:解析 两者在测试对象、测试时间、测试层次及测试性质上均有较大区别。具体来说,单元测试采用白盒测试方法,从开发者角度考虑问题,属于早期测试;系统测试采用黑盒测试方法,从用户角度考虑问题,是一种后期测试。10.软件测试的目的是(分数
16、:2.00)A.软件编写完成后的后续工作B.寻找软件缺陷而执行程序的过程 C.使软件能更好工作D.保证程序能完全正确的被执行解析:解析 软件测试的目的是为了尽可能发现软件的缺陷而不是证明软件是正确的。11.下列关于覆盖率的使用原则,描述错误的是(分数:2.00)A.覆盖率不是目的,只是一种手段B.只考虑一种覆盖率指标是不恰当的C.应该追求绝对 100%的覆盖率 D.不可能针对所有的覆盖率指标去进行测试解析:解析 覆盖率的使用原则包括:覆盖率不是目的,只是一种手段。因为测试的主要目的还是尽可能地去发现错误。不可能针对所有的覆盖率指标去进行测试,相反,如果只考虑一种覆盖率指标也是不恰当的。不要追求
17、绝对 100%的覆盖率。12.属于白盒测试最常用的测试用例技术的是(分数:2.00)A.逻辑覆盖 B.等价类法C.错误猜测法D.使用综合测试策略解析:解析 逻辑覆盖是白盒测试最常用的一种测试用例技术。13.下列选项中不属于性能计数器的分析技术的是(分数:2.00)A.内存分析B.进程分析C.处理器分析D.通信中断分析 解析:解析 基于性能计数器的分析技术有内存分析、处理器分析、磁盘 I/O 分析和进程分析等。14.场景测试方法是基于 IBM 公司推行的 RUP 的测试用例生成方法,该方法的出发点是(分数:2.00)A.用例 B.事件流C.控制流D.数据流解析:解析 场景测试方法是基于。IBM
18、公司推行的 RUP 的测试用例生成方法。该方法从系统分析的结果用例出发,通过对每个用例的场景进行分析,逐步实现测试用例的构造。15.下列选项中不属于静态错误分析的是(分数:2.00)A.功能分析 B.引用分析C.类型和单位分析D.表达式分析解析:解析 静态错误分析主要包括:类型和单位分析、引用分析、表达式分析和接口分析。16.测试计划活动中最关键的一步是(分数:2.00)A.收集信息B.确定测试需求和测试层次 C.内部审查D.测试计划的定稿和批准解析:解析 测试计划不可能一气呵成,而是要经过计划初期、起草、讨论和审查等不同阶段,才能将测试计划制定好,且不同的测试阶段或不同的测试任务都可能需要具
19、体的测试计划。测试计划具体细分为:计划初期是收集信息。确定测试需求和测试层次。计划起草。内部审查。计划讨论和修改。测试计划的多方审查。测试计划的定稿和批准。其中测试计划最关键的一步就是确定测试需求和测试层次。17.在需求获取与定义阶段就开始建立,以后要不断地细化和完善的文档是(分数:2.00)A.用户手册 B.测试计划手册C.内部设计规格说明D.外部设计规格说明解析:解析 软件的外部设计是从用户的角度对产品进行描述的,外部设计规格说明是在外部设计期间产生的文档。用户手册是另一种文档,与外部设计规格说明不同,它是需求获取与定义阶段就开始建立,以后要不断地细化和完善的文档。18.一般来说,大多数软
20、件缺陷源于软件开发项目的(分数:2.00)A.软件测试阶段B.程序编写和调试阶段C.加班工作期间D.需求和设计阶段 解析:19.关于 Web 应用软件的特点,下列描述中错误的是(分数:2.00)A.内容驱动B.基于无连接协议C.安全性要求较高D.开发周期长,演变较慢 解析:解析 Web 应用软件的特点有:基于无连接协议、内容驱动、开发周期短、演化频繁、安全性要求较高、美观性要求较高。20.黑盒测试方法主要用于测试(分数:2.00)A.软件外部功能 B.程序正确性C.结构合理性D.程序的内部逻辑解析:21.国际标准化组织公布的国际标准 ISO 8402 将软件质量综合定义为(分数:2.00)A.
21、反映实体满足明确的和隐含的需求的能力的特性的总和 B.表征软件产品满足明确的和隐含的需求的能力的特性或特征的集合C.软件产品满足明确的需求的程度的一组属性的集合D.表征计算机系统卓越程度的所有属性的集合解析:解析 在本题中,B 选项为 20 世纪 90 年代,Norman、Robin 等对软件质量的定义;C 选项为 1982年,Fisher 和 Baker 对软件质量的定义;D 选项则是 1979 年,Fisher 和 Light 对软件质量的定义。22.下列关于面向对象程序的单元测试的说法中错误的是(分数:2.00)A.面向对象程序的单元测试中可独立被测试的单元是一个类族B.面向对象程序的单
22、元测试中可独立被测试的单元也可能是一个独立的类C.面向对象程序的单元测试分为方法层次、类层次和类树层次的测试D.面向对象程序的单元测试与面向过程的单元测试目的相同 解析:解析 A、B、C 三个选项都正确,面向对象程序的单元测试与面向过程的单元测试有不同的测试目的。23.下列不属于软件兼容性测试的考虑范畴的是(分数:2.00)A.与浏览器的兼容性B.与平台软件的兼容性C.与外设的兼容性 D.与操作系统的兼容性解析:解析 软件兼容性测试主要考虑的内容有:与操作系统的兼容性、与数据库的兼容性、与浏览器的兼容性、与中间件的兼容性、与其他软件的兼容性、与平台软件的兼容性。24.关于 Web 应用软件基本
23、结构,客户端主要有(分数:2.00)A.浏览器B.HTML 文档C.客户端程序D.以上全部 解析:解析 Web 应用软件是基于 HTTP 协议和 HTML 的,客户端主要包括客户端程序、HTML 文档和浏览器。25.下列有关软件问题生命周期模型中状态定义的说法,正确的一项是(分数:2.00)A.“关闭”表示工程师已经完成修正,等待测试人员验证B.“打开”表示软件问题已经被确认并分配给相关开发工程师处理 C.“解决”表示确认为无效的软件问题D.“待验”表示软件问题已经被修复解析:解析 软件问题生命周期模型中的状态定义如下:新建(New)测试中新报告的软件问题。打开(Open)软件问题已经被确认并
24、分配给相关开发工程师处理。关闭(Closed)确认为无效的软件问题。待验(Pending)工程师已经完成修正,等待测试人员验证。解决(Resolred)软件问题已被修复。二、论述题(总题数:3,分数:50.00)26.以下是对 ATM 系统的交互功能的描述,请仔细阅读并完成要求。(1)ATM 系统具有取款、查询和修改密码的功能。(2)进入初始页面,显示提示信息“请输入密码”,若密码正确,则进入系统的主界面,将显示四个可选框:取款、查询、修改密码和退卡;若密码错误,则返回到初始页面。(3)选择取款页面,提示请输入取款金额,若金额有效,则吐出相应的现金数目,然后回到主界面;若金额无效,则返回到取款
25、页面。(4)选择查询页面,显示当前余额,然后回到主界面。(5)选择修改密码页面,提示输入新密码并确认,完成后再返回到主界面;若设置新密码错误,则返回到修改密码页面。(6)最后在主界面中选择“退卡”选项,ATM 系统则退卡给储户,操作结束。画出该交互过程的流程图。(分数:8.00)_正确答案:( )解析:以下是 QESuite Web Version 1.0 用户手册的相关内容,请仔细阅读并按要求回答问题。1.下表是测试用的规格说明,请阐述测试用例的定义及相关内容。域名 描述编号是创建测试用例时由系统生成的,唯一的,且在测试用例的生命周期中保持不变的显示域项目 当前的被测项目标题,便于用户了解当
26、前的被测试项目是什么标题 简单描述被测试区域的测试目标,不能超过 50 个字,此域必须填写测试状态 标明测试用例是否已进入一个活动的测试任务中创建者是创建测试用例时的用户名,自动填写,在测试用例的生命周期中保持不变的显示域创建日期是创建测试用例时的日期,自动填写,在测试用例的生命周期中保持不变的显示域修改者 记录最后一次修改测试用例的用户名,自动填写修改日期 是最后一次修改测试用例时的日期,自动填写(分数:16.00)_正确答案:(测试用例是一个覆盖被测功能区域的所有测试案例的集合,每个测试用例应包括测试标题、测试步骤以及期望结果等基本信息。它是测试人员对软件产品进行测试的重要依据,测试用例编
27、写的质量将直接影响到软件产品的质量。)解析:_正确答案:(新建测试中新报告的软件问题。打开软件问题已被确认并分配给相关开发工程师处理。关闭确认为无效的软件问题。待验工程师已完成修正,等待测试人员验证。解决软件问题已被修复。)解析:假设栈 Stack 的容量是 2,栈元素的数据类型是 char 类型,该栈对象有三种状态,分别为:S1栈空状态;S2非空非满状态;S3栈满状态。转换到各个状态的条件如下。S1:(c0)创建并初始化栈。(c1)在 S2 下执行置空运算 Clear()。(c2)在 S2 下执行出栈运算 Pop()。(c3)在 S3 下执行置空运算 Clear()。S2:(c4)在 S1 下执行进栈运算 Push()。(c5)在 S3 下执行出栈运算 Pop()。S3:(c6)在 S2 下执行进栈运算 Push()。要求:1.根据题设条件,画出栈对象的状态迁移图。(分数:26.01)_正确答案:(状态迁移图)解析:_正确答案:(McCabe 环路复杂性为 4。)解析:_正确答案:(测试路径如下:)解析: