全国计算机等级考试四级笔试试卷软件测试工程师answer(共50页).doc
《全国计算机等级考试四级笔试试卷软件测试工程师answer(共50页).doc》由会员分享,可在线阅读,更多相关《全国计算机等级考试四级笔试试卷软件测试工程师answer(共50页).doc(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上2009年9月真题答案解析一、选择题答案与解析(1)答案:B解析:软件验证和确认理论是测试过程的理论依据,验证是检查软件开发的各个阶段过程活动的结果是否满足规格说明的描述,证实各阶段和阶段之间的逻辑协调性、完备性和正确性。确认是证实在一个给定的外部环境中软件的逻辑正确性,即是否满足用户的要求。(2)答案:B解析:白盒测试又称为逻辑驱动测试,它对程序的逻辑结构进行检查,从中获取测试数据,它不需要测试软件产品的功能。黑盒测试是另一种测试策略,它将程序视为一个黑盒子,测试目标与程序内部机制和结构完全无关,而是将重点集中放在发现程序不按其规格说明正确运行的环境条件,黑盒测试注
2、重于测试的功能性需求。(3)答案:D解析:静态错误分析主要用于确定在源程序中是否有某类错误或者危险结构,包括:类型和单位分析为了强化对源程序中数据类型的检查,在程序设计语言中扩充一些新的数据类型引用分析在静态错误分析中,最广泛使用的技术就是发现引用异常。表达式分析对表达式进行分析,以发现和纠正在表达式中出现的错误。接口分析接口的一致性是程序的静态错误分析和设计分析共同研究的题目。接口一致性的设计分析主要检查模块之间接口的一致性和模块与外部数据库之间接口的一致性。(4)答案:D解析:在选择和使用覆盖率时,应该注意以下原则:l 覆盖率只是一种手段,不是测试的最终目的。l 不可能针对所有的覆盖率进行
3、测试,但如果只考虑一种覆盖率也是不妥的l 不要追求绝对10%的覆盖率l 设计测试用例时,不仅要考虑到覆盖率,还应综合考虑其它方面,如成本等。D说法不当。(5)答案:A解析:满足了条件覆盖,并不一定满足判定覆盖。尽管路径覆盖比判定/条件覆盖更强,但是路径覆盖并不一定能包含判定/条件覆盖。(6)答案:B解析:走查的步骤如下:计划走查会议 走查产品 执行走查 解决缺陷 走查记录 产品返工,准备测试用例是走查之前要进行的活动。(7)答案:C解析:判定/条件覆盖,就是设计足够的测试用例,使得判定语句中每个条件的所有可能取值至少评价一次,同时每个判定语句本身所有可能分支也至少评价一次。本程序一共有两个判定
4、语句,三条路径。若以1代表某一个条件为真,0代表为假,则对于(a=b)、(c=d)、(e=f)、(p=q)、(s=t)这五个条件,取不同的真值组合,即可设计出相应的测试用例,达到判定/条件覆盖的要求。在这里,先取(a=b)、(c=d)、(e=f)为101,(p=q)、(s=t)为任意值,然后取全部五个条件为010 11和010 00,即能达到判定/条件覆盖的要求。(8)答案:A解析:A的说法与事实正好相反,自底向上的一个优点是在工作的初期就可以进行并行测试和集成,比使用自顶向下的策略效率高。(9)答案:A解析:B、C、D都是单元测试所关注的。(10)答案:解析:可跟踪性分析是指标识原始需求和相
5、应开发结果之间关系的能力。可跟踪性分析的目的是保证规格说明中的每项需求被正确标识,当前阶段与前后阶段之间跟踪是一致的。借助于向前和向后跟踪,可以建立高效的测试计划,并可验证覆盖了功能和设计需求/特性的测试用例的实测结果。每个跟踪按一致性、完整性和正确性来分析,以便验证全部的软件需求是否在软件中得以实现以及是否与正确的设计、代码和测试信息相联系。(11)答案:B解析:软件性能测试包括三个目标:发现缺陷,性能调优,能力检验与规划,A说法正确压力测试是指在较大的业务压力下,即系统运行环境超常的情况下,测试软件是否存在功能和性能上的缺陷。负载测试是指不断增加软件的业务压力,探测软件在保证预定性能指标的
6、情况下所能负担的最大压力。压力测试和负载测试是有区别的,二者都需要对软件施加业务压力,但根本目的完全不同,负载测试是探测软件处理能力的极限,而压力测试是利用压力揭示潜在缺陷。B说法错误。性能测试通常需要对测试结果进行分析才能获得测试结论,C说法正确。性能测试的目的之一,就是检验软件的最大负载,D说法也正确。(12)答案:C解析:软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是在完成该功能时展示出来的及时性。根据测试目的的不同,可以把软件性能测试以及与性能有关的其他一些测试分为:性能测试并发测试压力测试可靠性测试负载测试配置测试失效恢复测试兼容性测试属于系统测试的范
7、畴,不是软件性能测试。故本题选C。(13)答案:A解析:软件可靠性和软件可靠性测试的研究在很大程度上借鉴了硬件可靠性的研究,但由于软件和硬件的不同特点导致软件可靠性和硬件可靠性也有很大的不同,这也是软件可靠性研究仍然很不成熟的重要原因。具体而言,软件可靠性和硬件可靠性的区别包括:唯一性。软件设计出来后,所有复本就是一摸一样的;硬件设计出来后,每个按照设计生产的硬件都不可能完全相同。物理退化。一个正确的硬件器件会因为物理退化在某时刻失效,但正确的软件则不会因为物理退化而发生失效。逻辑复杂性。软件具有复杂的内部逻辑,而硬件的内部逻辑则相对简单。版本更新。硬件的版本更新通常很慢,而软件的版本更新比较
8、频繁。B说法错误,硬件也有恶意使用者。随着国际化的加深,硬件的生产标准越来越统一,使用者也遍布很多地区,C说法错误。硬件失效通常不是逻辑错误导致的,但也有例外,D说法太过绝对。综合以上,本题应选A。(14)答案:B由于大突击集成面对的是整个软件的所有代码,几乎没有什么方法能够为此生成合适的测试用例集,所以大突击集成可能导致测试不充分,A说法正确。在面向对象中,一般有少数的方法需要单独进行测试,D说法正确。(15)答案:D解析:在面向对象中,很难对单个成员方法进行充分的测试,这是因为多个成员方法会通过成员变量产生相互依赖关系。合理的测试是将这些相互依赖的成员方法放在一起进行测试,故A说法错误。基
9、于判定表的测试,又称为组合功能测试,既可以用于传统软件测试,也可以用于面向对象软件测试,B说法错误。不变式边界测试是一种基本的和高效的类层次的测试技术。类层次测试的一个主要困难是成员变量的某些状态可能不会出现,这就是所谓的类不变式。不变式边界测试首先准确定义类的不变式,其次寻找成员方法的调用序列以违反类不变式,这些调用序列即可作为测试用例。不变式边界测试的目的不是测试功能组合,C项说法错误。对于抽象类,需要进行单元测试。但是构造抽象类的驱动程序显然比构造其他类的驱动程序复杂,因为在测试抽象类时,需要为抽象类构造一个子类,并实现所有抽象类没有实现的成员方法。D正确。(16)答案:B解析:大突击集
10、成最大优势在于整个测试过程可以在很短的时间内完成。它的主要劣势为:测试难以充分进行,大突击测试会增加调试难度。基于大突击集成的主要缺点,只有在整个软件的可靠性有了基本保障时,大突击集成才是一个合理的选择。虽然大突击集成的劣势很明显,但在一定条件下还是能够体现一定的优势的,故A说法错误。在面向对象集成中,自底向上集成需要开发大量的测试驱动代码,自顶向下集成也需要开发大量测试桩代码,B正确。 协作集成和基于集成是新型的面向对象集成方式,二者与自底向上集成和自顶向下集成有类似之处,也有不同之处,不能混为一谈,C、D说法均不正确。(17)答案:C解析:对Web应用软件进行性能测试主要包括三个方面:并发
11、测试、负载测试和压力测试、配置测试和性能调优。A说法错误。内容测试不属于易用性测试范畴,B说法错误。Cookie测试是Web应用软件功能测试的一项重要内容,C正确。是否存在无效链接是Web应用软件功能测试关注的范畴,D错误。(18)答案:C解析:软件是否能在多种操作系统下运行属于兼容性测试的范畴,软件是否能与同类软件共享数据也属于兼容性测试,软件是否能抵御网络攻击属于性能测试,A、B、D均错误。软件是否能主动禁止用户可能进行的非法操作属于软件易用性测试关注的范畴,C正确。(19)答案:A解析:常用的数据兼容性主要包括两类:不同版本间的数据兼容性。B、C都属于这一类。不同软件间的数据兼容性。D属
12、于这一类。A不属于数据兼容性测试关注的范畴。(20)答案:A解析:极限测试本质上是为了满足极限编程的思想和流程而设计的一套测试策略和流程,A正确。极限测试中单元测试是由编码人员完成的测试,验收测试主要由用户完成,B说法错误。极限测试的验收测试的形式决定了其不是很详细和严格的测试,编码中常见的错误大多数可以逃过验收测试,C说法错误。极限测试除了要进行单元测试,还要进行验收测试,D说法错误。(21)答案:D解析:软件缺陷报告的编写应该遵循以下原则:软件缺陷报告是测试人员和开发人员交流的纽带,最重要的原则是一定要将问题说明白,让不能和测试人员直接交流的开发人员可以依据描述理解和再现所发现的软件缺陷。
13、一个软件缺陷报告中只应记录一个不可再划分的软件缺陷。软件缺陷报告的标题应该能够最简洁表达一个软件缺陷。再现该软件缺陷的步骤应该是最简化的,应剔除其他不相关的步骤或因素。依据一系列的程序执行步骤和测试输入来再现软件缺陷。应提供全面的有关该软件缺陷再现的信息。不要填写重复的软件缺陷。当一个缺陷是被报告过的,那么就不可以再填写另外一个报告,否则会造成质量保证人员和开发人员的额外负担与资源浪费。A、B、C均符合以上规则,D的说法与最后一条规则相违背。(23)答案:B解析:软件测试环境的五个要素有:硬件软件测试最基本的硬件包括服务器和测试用机。硬件设备按配置标准,通常分为标准配置、最佳配置和最低配置三种
14、。软件软件环境包括操作系统和应用程序。数据准备测试的数据很重要,数据准备包括数据量和真实性两个方面。网络环境 随着网络的普及,软件产品离不开网络环境,网络环境是硬件因素和软件因素的综合。各种路由器、交换机、网线和网卡是硬件基础,各种代理、网关协议、防火墙则是软件基础。测试工具测试工具分类:代码分析与测试工具、自动/半自动测试过程管理工具和测试资源管理工具。(24)答案:C解析:根据GB/T15532-2008计算机软件测试规范,软件测试管理包括测试过程管理、配置管理和测试评审管理。(25)答案:B解析:根据GB/T15532-2008计算机软件测试规范,测试用例的设计应遵循下面原则:基于测试需
15、求的原则;基于测试方法的原则;兼顾测试充分性和效率的原则;测试执行的可重复性原则。二、论述题答案与解析论述题1解答: (1)把有限状态自动机图的状态用结点代替,迁移用弧线代替,则可画出相应的控制流图。(2)上图的环路复杂性度量V(G)为5(区域数或者V(G)=E-N+2)所以基本路径集合共有5条独立的路径:S1S1S1S2S5S1S2S3S4S1S1S2S3S5S1S2S3S4S5(3)为每一条独立路径个设计一组测试用例,以便强迫程序沿着该路径至少执行一次1. 插入无效卡2. 插入有效卡正确输入PIN码按下事物选择按钮3. 插入有效卡第一次错误输入PIN码第二次错误输入PIN码第三次错误输入P
16、IN码4. 插入有效卡第一次错误输入PIN码第二次正确输入PIN码按下事物选择按钮5. 插入有效卡第一次错误输入PIN码第二次错误输入PIN码第三次正确输入PIN码按下事物选择按钮论述题2解答: (1)函数leap的流程图如下:函数numdays的流程图如下:main函数的流程图如下(语句的具体内容已略去):本题的程序用来打印输入日期的第二天日期,只要根据程序中的判断语句设计出相关的测试用例,就能使得所有函数的语句覆盖率和分支覆盖率均能达到100%。为了满足leap函数的语句覆盖率和分支覆盖率均能达到100%,应当设置两个测试用例,使得一个是闰年,一个不是,在这里可以取2008年和2007年。
17、由于numdays函数的判定语句是对leap的函数值进行判定,满足了leap的覆盖率要求,就能够满足numdays的覆盖率要求。对于main函数中的while语句,根据流程图,先使判断部分为1,然后为0,这样就可以达到覆盖要求。对于while语句之后的ifelse ifelse语句,只要能够使每个分支都执行一遍,就能达到覆盖要求。根据以上分析,设计测试用例如下:用例编号年月日leapnumdayswhileifelse ifelse输出结果120082301291error2200712310310month=122008.1.13610310310today=numdays6.11.1480
18、44171300today!=numdays804.4.18注意,这里的第(1)2个用例使得leap函数中的return 1和 return 0都能执行一遍,同时numdays函数中的ifelse结构两个分支也都能得到执行;第1个用例也能够使while循环体能够得到执行;第(2)(3)4用例三个测试用例刚好使main中的ifelse ifelse三个分支都执行一遍。论述题3解答: 下图是QESuite Web Version 1.0的问题报告工作状态转换流程。操作1中,在新建状态下,应该由测试人员进行校验工作,然后更改问题状态为打开。操作2中,结果状态为打开/再现,说明是测试人员由打开状态进行
19、校验,最后变为打开/再现。此时版本号不变,为Lead1.0_.操作3中,状态为修复/修复,说明是开发人员进行了修复操作,最后状态变为待验,此时版本号变更为Lead1.0_.操作4中,操作后的问题状态为打开/修复失败,说明是测试人员进行了验证操作,执行操作为验证。所以,最后的表格为:操作序号操作者执行操作操作后的问题状态测试版本1Test5新建打开Lead1.0_2Test5校验打开/再现Lead1.0_3Developer3修复/修复待验Lead1.0_4Test5验证/不同意打开/修复失败Lead1.0_2009年3月真题答案解析一、选择题答案解析(1)答 案:D解 析:软件的效率是指:在规
20、定条件下,相对于所用的资源的数量,软件产品可提供适当性能的能力。软件的易用性是指:在指定条件下使用,软件产品被理解、学习、使用和吸引用户的能力软件的功能性是指:当软件在指定条件下使用,软件产品提供明确的和隐含要求的功能的能力。软件的可靠性是指:在指定的条件下使用时,软件产品维持规定的性能水平的能力。(2)答 案:C解 析:独立测试是指软件测试工作由在经济上和管理上独立于开发机构的组织进行。采用独立测试方式,无论在技术上还是管理上,都对提高软件测试的有效性具有重要意义,对软件测试的客观性、专业性、权威性、资源的保证等方面都有较大的影响。(3)答 案:B解 析:各种软件缺陷所造成的后果是不同的,有
21、的仅仅是不方便,有的可能是灾难性的。一般来说,问题越严重的,其处理的优先级越高,越要得到及时纠正。软件公司对缺陷严重性级别的定义不尽相同,但一般来说可以概括为四种级别:l 致命的错误,指造成系统或应用程序崩溃、死机、系统悬挂,或造成数据丢失、主要功能完全丧失等。l 严重的错误,指功能或特性没有实现,主要功能部分丧失,次要功能完全丧失,或致命的错误声明。l 一般的错误,指不太严重的错误,这样的软件缺陷虽然不影响系统的基本使用,但没有很好的实现功能,没有达到预期的效果。l 微小的错误,指一些小的问题,对功能几乎没有影响,产品及属性仍可使用。(4)答案:B解析:对于嵌套型分支结构,若有N个判定语句,
22、则存在N+1条不同的路径。 (5)答案:A解析:DDP覆盖率公式:DDP覆盖率=被评价到的判定路径数量/程序中判定路径总数100%=4/7100%=57.1%。(6)答 案:A解 析:边界值分析也是一种黑盒测试方法,是对等价类划分方法的补充。人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。(7)答 案:D解 析:单元测试的测试对象是实现了具体功能的程序单元,一般对应详细设计中所描述的设计单元。(8)答案:C解析:一个好的设计应能预见各种出错条件,并进行适当的出错处理,即预设各种出错处理通路。出错处理是模块功能的一部分,这种带有预见性的机制保证了在
23、程序出错时,对出错部分及时修补,保证其逻辑上的正确性。因此,出错处理同样需要认真测试。(9)答 案:B解 析:正向集成测试的重点是验证集成之后的模块是否按照设计实现了预期的功能。集成测试中的逆向测试包括分析被测接口是否实现了需求规格没有描述的功能,检查规格说明中可能出现的接口遗漏,或者判断接口定义是否有错误,以及可能出现的接口异常错误,包括接口数据本身的错误、接口数据顺序错误等。(10)答 案:C解 析:成对集成的思想是免除驱动/桩模块的开发,使用实际代码代替驱动模块和桩模块。这类似于一次性集成的方式,但是这种集成限制在调用图中的一对单元上。三明治集成(混合的增量式集成)的目的是综合自顶向下和
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国 计算机等级考试 笔试 试卷 软件 测试 工程师 answer 50
限制150内