计算机四级软件测试工程师26.docx
《计算机四级软件测试工程师26.docx》由会员分享,可在线阅读,更多相关《计算机四级软件测试工程师26.docx(15页珍藏版)》请在冰豆网上搜索。
计算机四级软件测试工程师26
[模拟]计算机四级软件测试工程师26
选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的。
第1题:
功能或特性没有实现,主要功能部分丧失,次要功能完伞丧失,或致命的错误声明,这属于软件缺陷级别中的
A.致命的缺陷
B.严重的缺陷
C.一般的缺陷
D.微小的缺陷
参考答案:
B
软件缺陷一旦被发现,就要设法找出引起该缺陷的原因,分析对产品质量的影响,然后确定软件缺陷的严重性和处理这个缺陷的优先级。
一般来说,问题越严重,其处理的优先级越高,越要得到及时的纠正。
软件缺陷有四种级别,分别为:
致命的(Fatal),严重的(Critical),一般的(Major),微小的(Minor)。
第2题:
关于同行评审说法正确的是
A.同行评审是对程序进行模拟,一步步的展示程序如何处理测试数据
B.同行评审虽然可以缩减工作时间,但同时也增加了大量的成本
C.在软件开发过程中进行同行评审会浪费时间,减缓项目的进度
D.同行评审的目的就是发现产品的缺陷,因此在评审上的投入可以减少大量的后期返工
参考答案:
D
同行评审(PeerReview)是一种通过作者的同行来确定缺陷和需要变更区域的检查方法。
在软件开发过程中,管理者、开发人员、客户有时都反对评审,因为他们认为同行评审会浪费时间,减缓项目的进度。
而实际上,真正造成项目进度缓慢的是各种各样的产品缺陷,评审的重要目的就是在评审中发现产品的缺陷,因此在评审上的投入便可以减少大量的后期返工。
通过评审,还可将问题记下来,具有历史可追溯性,另外很多事实证明了评审在缩减工作时间的同时还可以节约大量成本。
第3题:
走查的最主要目标有
①发现缺陷、遗漏和矛盾的地方②改进产品
③考虑可替换的实现方法
A.①和②
B.①和③
C.②和③
D.①、②和③
参考答案:
D
走查的目的是要评价一个产品,通常是程序代码,走查一直以来都与代码检查联系在一起,其实走查也可以应用到产品的其他阶段,如结构设计、详细设计、测试计划等文档上。
走查的最主要目标是要发现缺陷、遗漏和矛盾的地方;改进产品:
考虑可替换的实现方法。
第4题:
在需求获取与定义阶段就开始建立,以后要不断细化和完善的文档是
A.用户手册
B.外部设计规格说明
C.内部设计规格说明
D.测试计划手册
参考答案:
A
软件的外部设计是从用户的角度对产品进行描述的,外部设计规格说明是在外部设计期间产生的文档,用户手册是另一种文档,与外部设计规格说明不同的是,它是在需求获取与定义阶段就开始建立,以后要不断细化和完善的文档。
第5题:
对于传统软件来说,按集成程度不同对集成测试进行划分,不属于该分类的是
A.模块内集成测试
B.模块间集成测试
C.子系统内集成测试
D.子系统间集成测试
参考答案:
B
对于传统软件,按集成程度不同,可以分为三个层次,模块内集成测试、子系统内集成测试、子系统间集成测试。
对于面向对象的应用系统,按集成程度不同,可以分为两个层次,类内集成测试和类间集成测试。
第6题:
下列关于逻辑覆盖的叙述中,说法错误的是
A.对于多分支的判定,判定覆盖要使每一个判定表达式获得每一种可能的值来测试
B.语句覆盖是比较弱的覆盖标准
C.语句覆盖较判定覆盖严格,但该测试仍不充分
D.条件组合覆盖是比较强的覆盖标准
参考答案:
C
考察自盒测试中各种逻辑覆盖之间的关系。
第7题:
一个功能增强型项目,即其以前的产品都已经很稳定,并且新增的项目只有少数几个构件被增加或修改。
对于这样的项目我们通常选择哪种集成测试策略最好
A.自顶向下集成策略
B.自底向上集成策略
C.三明治式集成策略
D.一次性集成测试策略
参考答案:
D
集成测试中基于分解的测试策略可以分为非增量式集成和增量式集成两大类。
非增量式集成是分别对系统中的每一个模块进行单元测试,然后将所有的通过了单元测试的模块按照层次结构一次性组装在一起进行测试,增量式集成与非增量式集成不同,它是一个逐步集成的过程。
对于题目中一个功能增强型项目进行测试,采用一次性集成方式可以迅速完成集成测试,并且仅需要极少数的驱动模块和桩模块设计,所以这应该是最好的选择。
第8题:
下列关于测试策略,说法错误的是
A.自底向上测试的优点是随着上移,驱动模块逐步减少,测试开销小一些
B.自顶向下测试的优点是较早的发现高层模块接口、控制等方面的问题
C.自底向上测试的优点是比较容易设计测试用倒
D.自顶向下测试的优点是使得低层模块的错误较早发现
参考答案:
D
自顶向下测试的优点应该是使得项层模块的错误较早发现。
第9题:
在健壮性测试中一般的方法是软件故障插入测试,这里插入故障的方法可以分为两类:
状态插入和代码插入。
下面不属于实现状态插入方法的是
A.基于进程的
B.基于消息的
C.基于程序的
D.基于调试器的
参考答案:
C
健壮性测试(RobustnessTesting)又称容错测试,用于测试系统在出故障时,是否能自动恢复或者忽略故障继续运行。
在健壮性测试中一般的方法是软件故障插入测试,这里插入故障的方法可以分为两类:
状态插入和代码插入。
状态插入是通过改变一个运行系统的状态和行为来实现,其中实现状态插入的方法主要有三种:
基于进程的(ProcessBased)、基于调试器的(DebuggerBased)和基于消息的(MessageBased)。
第10题:
下列说法正确的是
A.语句覆盖使得每个判定的每个分支至少执行一次
B.判定覆盖使得每条语句至少执行一次
C.条件覆盖使得每个判定每个条件应取到各种可能的值
D.条件组合覆盖使得每个判定中各条件的每一种组合至少出现一次
参考答案:
C
考察白盒测试中逻辑覆盖的关系。
第11题:
之所以性能测试有很多指标,是因为不同的人员对软件性能的视角不同,关注点也不同,单纯认为性能就是响应时间的是
A.管理员视角
B.用户视角
C.测试人员视角
D.开发人员视角
参考答案:
B
软件的性能是软件的一种非功能特性,软件性能指标有很多,如响应时间、系统响应时间和应用延迟时间、吞吐量、并发用户数、资源利用率,之所以有这么多指标是因为不同的人员对软件性能的视角不同,关注点也不同。
从用户视角来看,性能就是响应时间,用户甚至不关心响应时间中哪些是软件造成,哪些是硬件造成的;从管理员视角来看,管理员首先关注普通用户感受到的软件性能,其次要关注如何利用管理功能进行性能调优等;从开发人员视角看,开发人员会更加深入的关注软件性能,在开发过程中,开发人员希望能尽可能的开发出高性能的软件。
第12题:
在北京某个银行的人事信息管理软件中,系统允许用户输入8位数字的北京市电话号码。
若使用等价类划分法设计测试用例,获得输入等价类,那么从保证测试效果的角度来看,下面最佳的测试用例选择应为
A.62570007,80603805,100080,39103825
B.62570007,80603805
C.62570007,39103825,8253324,空值,h
D.39103825,8253324,@,1391092300
参考答案:
C
根据等价类划分法设计测试用例的原则。
第13题:
有一种类,它有成员方法,但有些是没有实现的成员方法,该类是
A.抽象类
B.基类
C.派生类
D.虚基类
参考答案:
A
所谓抽象类,就是只有一些成员方法而没有其实现的类,甚至有的抽象类中的所有方法都没有实现。
由于有成员方法而没有实现的成员方法,抽象类不能直接用于创建实例。
第14题:
下列关于软件测试自动化,说法正确的是
A.无法依靠人工完成的测试活动均可以通过测试自动化完成
B.输出结果不明确的测试不适合自动化
C.是否采用测试自动化与所开发的应用软件项目的性质无关
D.与手工测试相比,采用自动化测试可以明显的提高测试质量
参考答案:
B
考查对于软件自动化测试的理解,当输出结果不明确时,不适合采用自动化测试。
第15题:
以下哪一项不属于Web应用软件表示层测试关注的范畴
A.排版结构的测试
B.链接结构的测试
C.浏览器兼容性的测试
D.应用服务器兼容性测试
参考答案:
D
Web应用软件表示层的测试主要集中在客户端,测试的内容包括:
排版结构的测试;链接结构的测试;客户端程序的测试;浏览器兼容性测试。
第16题:
下面Web应用软件的测试策略中,不属于表示层的测试内容的是
A.链接结构的测试
B.浏览器兼容性的测试
C.排版结构的测试
D.服务器端程序的测试
参考答案:
D
通常Web应用软件的测试分为三层:
表示层、业务层和数据层。
其中表示层的测试主要集中在客户端,测试内容主要包括:
①排版结构的测试;②链接结构的测试;③客户端程序的测试;④浏览器兼容性测试。
第17题:
下列关于极限测试的说法中,正确的是
A.极限测试是一种新型的测试方法,传统的测试技术均不适用于极限测试
B.极限测试中所有的测试均是由编码人员完成的
C.与传统的软件测试相比,极限测试是一种更严格的测试
D.极限测试需要频繁地进行单元测试
参考答案:
D
20世纪90年代。
KentBeck提出了极限编程的新型软件开发方法,该方法主要目的是利用轻量、便捷的开发过程使得开发人员能够更快地完成应用程序的开发。
与传统的软件开发方法相比,开发效率高,但代码质量得不到保证,为此出现了极限测试——为极限编程量身定做的测试方式,即通过频繁地单元测试和验收测试来保证代码质量。
在极限测试中,单元测试主要由编码人员完成,验收测试则主要由用户完成。
极限编程的主要缺点在于编码人员的自由度过大,由于没有严格的需求和设计规约,所以极限测试没有传统的软件测试严格。
单元测试是极限编程中最重要的发现缺陷的手段,在极限编程中的单元测试与传统的单元测试基本类似,所以有些传统的测试技术也可以用到极限测试中来,而且极限测试的本质是为了满足极限编程的思想和流程而设计的一套测试策略和流程,其本身并不局限于使用特定的技术和方法,所以传统的测试技术和方法人多数都可以在极限测试中使用。
第18题:
对采用迭代或增量开发过程模型开发的产品进行集成测试时最适合采用的集成策略是
A.传统的集成测试策略
B.基于使用的集成测试策略
C.基干集成测试策略
D.高频集成测试策略
参考答案:
D
高频集成是指在软件开发过程中频繁地将新开发的代码与已有代码集成。
最适用于采用迭代或增量开发过程模型开发的产品进行集成测试。
第19题:
下列关于软件测试过程的几种抽象模型,说法正确的是
A.H模型指出软件测试具有独立性,只要某个测试达到准备就绪点,测试执行活动就可以开展
B.W模型强调在整个项目开发中需要经历的不同测试级别,指明测试的对象是程序
C.软件测试过程与软件开发过程不同的是,它不必遵循软件工程原理
D.V模型强调测试的对象不仅仅是程序,需求、设计等同样需要测试
参考答案:
A
软件测试过程体现了软件测试的流程和方法,与软件开发过程一样,都遵循软件工程原理,遵循管理学原理,故选项C不正确。
V模型反映出测试活动与分析设计活动的关系,强调了在整个项目开发过程中需要经历的不同测试级别,忽视了测试的对象不应该仅仅是程序,W模型对V模型进行了补充,明确指出:
测试的对象不仅仅是程序,需求、设计等同样需要进行测试,H模型指出软件测试是一个独立的流程,只要某个测试达到准备就绪点,测试执行活动就可以开展,软件测试贯穿于产品的整个生命周期,与其他流程可以并发进行。
第20题:
分析性能下降曲线时会把曲线划分为几个区间,下列对于分析性能瓶颈有很大作用的是
A.性能平坦区
B.性能急剧下降区
C.性能轻微下降区
D.其他区
参考答案:
B
通常分析性能下降曲线时,会首先将其分为几个区间:
性能平坦区,性能轻微下降区、性能急剧下降区。
其中性能平坦区是软件运行的正常状态,因此人们往往希望该区间越长越好;性能轻微下降区是软件承受高负载的缓冲区,该区间也是越长越好;性能急剧下降区不是软件的正常运行区间,这一阶段响应时间会急剧增加至用户不能忍受,吞吐量会急剧下降甚至低于单用户时的吞吐量,但该区间对于分析性能瓶颈却有很大作用,通常说来,性能急剧下降区的起始点(也称性能拐点)就是性能瓶颈出现的地方,此时进一步分析资源利用率就可以找到性能瓶颈的原因。
第21题:
通常用于脚本的初始化或演示、培训的脚本是
A.线性脚本
B.结构化脚本
C.数据驱动脚本
D.关键字驱动脚夺
参考答案:
A
脚本的基本结构有:
①线性脚本;②结构化脚本;③共享脚本;④数据驱动脚本;⑤关键字驱动脚本。
其中线性脚本是录制手工执行的测试用例时得到的脚本,线性脚本适合于简单的、一次性的测试,多用于脚本的初始化或演示、培训等。
第22题:
下列不属于接口分析必须关注的是
A.服务器接口
B.用户接口
C.硬件接口
D.软件接口
参考答案:
A
接口分析的目的是评估软件交付物(包括需求、设计、编码)是否正确、一致、完整和准确地说明了接口需求。
接口分析必须关注的有三种接口,分别是用户接口、硬件接口和软件接口。
第23题:
每个测试用例都应包括
A.唯一的名称和标识符
B.测试的初始化要求
C.测试用例说明
D.以上全部
参考答案:
D
每个测试用例应包括:
唯一的名称和标识符;测试追踪;用例说明;测试的初始化要求;测试的输入;期望的测试结果;评价测试结果的准则;实施测试用例的执行步骤。
第24题:
下列关于软件缺陷状态的定义,不正确的是
A.New——测试中新报告的软件缺陷
B.Open——缺陷被确认并分配给相关开发工程师处理
C.Fixed——测试工程师已完成修正,等待开发人员验证
D.Closed——缺陷已被修复
参考答案:
C
Fixed实际上是指开发工程师已完成修正,等待测试人员验证的缺陷状态。
第25题:
用纸张、缺陷单等来管理软件缺陷报告的方式被淘汰的主要原因是
A.无法满足快速处理软件缺陷的需求
B.无法满足快速存储软件缺陷的需求
C.无法满足共享软件缺陷的需求
D.以上全部
参考答案:
D
目前测试组织在早期使用纸张、缺陷单或者Excel电子表格文档等来管理软件缺陷报告的方式已经被淘汰,其主要原因是目前软件系统规模日益增大,测试过程发现软件缺陷数量多,参与测试人员众多,而这些传统的手段已经无法满足快速存储、处理、共享软件缺陷的需求。
论述题
第26题:
请试着比较一下黑盒测试、白盒测试、单元测试、集成测试、系统测试、验收测试的区别与联系。
_______
参考答案:
黑盒测试:
把测试对象当成一个黑盒子,测试人员完全不考虑逻辑结构和内部特性,只依据程式的需求说明书来检查程式的功能是否满足它的功能说明。
白盒测试:
把测试对象当成一个透明的盒子,允许测试人员利用程序内部逻辑结构及相关信息,设计或选择测试用例,对程式所有逻辑路径进行测试。
单元测试:
白盒测试的一种,对软件设计中的单元模块进行测试。
集成测试:
在单元测试的基础上,对单元模块之间的连接和组装进行测试。
系统测试:
在所有都考虑的情况下,对系统进行测试。
验收测试:
第三方进行的确认软件满足需求的测试。
详细解答:
以下是某“象棋中走马事件”应用程序的走马规则,请按要求回答问题。
以下是中国象棋中走马事件中的走马原则:
(1)如果落点在棋盘外,则不移动棋子。
(2)如果落点与起点不构成日字型,则不移动棋子。
(3)如果落点处有己方棋子,则不移动棋子。
(4)如果在落点方向的邻近交叉点有棋子(绊马腿),则不移动棋子。
(5)如果不属于
(1)~(4)条,且落点处无棋子,则移动棋子。
(6)如果不属于
(1)~(4)条,且落点处为对方棋子(非老将),则移动棋子并除去对方棋子。
(7)如果小属于
(1)~(4)条,且落点处为对方老将,则移动棋子,并提示战胜对方,游戏结束。
第27题:
画出该应用程序的因果图。
_______
参考答案:
第一步,从中国象棋中走马事件中的走马原则的描述中,明确原因和结果。
原因:
1落点在棋盘上。
2落点与起点构成日字。
3落点处无已方棋子。
4落点方向的邻近交叉点无棋子。
5落点处无棋子。
6落点处为对方棋子(非老将)。
7落点处为对方老将。
结果:
21、不移动棋子。
22、移动棋子。
23、移动棋子,并除去对方棋子。
24、移动棋子,并提示战胜对方,结束游戏。
第二步,根据上面分析的原因和结果,结合题目中二者的关系,建立因果图。
其因果图如下图所示,图中,结点11是导出结果的进一步原因。
第三步,标记约束。
由于4种结果不能同时发生,所以在因果图上标记O(唯一)约束。
由于原因5、6、7不能同时发生,所以在因果图上标出E(异)约束。
详细解答:
第28题:
对该软件进行基于因果图的方法设计测试用例。
_______
参考答案:
根据上面的因果图,建立对应的判定表。
在该应用程序中,原因有7个,一个完整的判定表应有128种情况。
由于篇幅的限制,且考虑到5、6、7原因只与中间结果11自关,所以这里将完整的判定表拆分为两个子表,如表1和表2所示。
对于结果22、23、24,中间结果是原因,因此在表2中,将11作为原因。
由表1可知,当结点11为1时,结果21为0。
由于结果21、22、23、24受到0约束的限制,不能同时为0,所以在表2中的2列是不能出现的情况;同样受到。
约束的还有8、12、14和16列;由于E约束,第7、8、11到16列也是不可能出现的情况。
在表中用灰框表示。
最后根据判定表设计测试用例。
如表2所示,判定表中没有被划去的每一列就是一个测试用例。
详细解答:
首先分析走马规则,找出所有的原因以及所有可能的结果,结合题目中找出二者的联系,按照因果图的画法规则,画出因果图。
然后按照基于因果图的方法设计测试用例。
第29题:
三角形问题的边界值分析测试用例。
_______
参考答案:
在三角形问题的描述中,除了要求边长是整数外,没有给出其他的限制条件。
将三角形每边边长的取值范围设置为[1,100]。
考虑边界设计的测试用例如下表所示。
详细解答: