当前位置:学者斋 >

计算机 >计算机四级 >

2015年9月计算机四级《软件测试工程师》模拟试题答案及解析

2015年9月计算机四级《软件测试工程师》模拟试题答案及解析

  一、选择题

2015年9月计算机四级《软件测试工程师》模拟试题答案及解析

1. C 2. C 3. D 4. B5. C

6. C 7. B 8. A 9. C10. C

11. A 12. B 13. C 14. A15. D

16. D 17. A 18. B 19. A20. D

21. D 22. A 23. A 24. C25. B

  二、论述题

1.问题1:

解答:

首先根据规格说明,列出所有可能的输入和输出,得到如下结果:

输入:处于提交状态、数据完整率达到80%以上、已经过业务员确认。

输出:处理或不处理。

找出所有输入与输出的关系,通过解析,得到以下的对应关系:

如果单据处于提交审批状态且数据完整率达到80%以上,则处理;

如果单据不处于提交审批状态,则不处理;

如果单据处于提交审批状态,数据完整率未达到80%以上,但已经过业务员确认,则处理。

下面列出所有的原因和结果,并进行编号,根据上面解析的关系,画出因果图,如图17-2所示:

原因:1:处于提交状态

2:数据完整率未达到80%以上

3:已经过业务员确认

结果:21:处理

22:不处理

问题2:

解答:

首先将上面的因果图转换成判定表,如下表所示:

然后将判定表中的8列转换成测试用例即可。

2.解析该程序的说明和功能,显然可以划分四组测试等价类:有效输入等价类、无效输入等价类、合法输出等价类和非法输出等价类。在考虑该程序的合法输出和非法输出时需要考虑计算机的字长,这时要进行边界值法设计测试用例,以补充等价类法设计的测试用例。具体采用边界值法设计的测试用例如下:

(1)使程序输入刚好等于最小的负整数:

输入:'-32768'

输出:-32768

(2)使程序输入刚好等于最大的正整数:

输入:'32767'

输出: 32767

(3)使程序输入刚好小于最小的负整数:

输入:'-32769'

输出:错误

(4)使程序输入刚好大于最大的正整数:

输入:'32768'

输出: 错误

3.问题1:

不是。穷举测试的方法并不是对所有程序都可以实现。

问题2:

对小程序进行穷举测试,也不见得能保证程序百分之百正确。所谓穷举测试是拿所有可能的输入数据来作为测试用例(黑盒测试),或覆盖程序中所有可能的路径(白盒测试)。对于小程序来说,实际上并不能真正作到穷举测试。

  答案解析

一、选择题

1.解析:白盒测试又称为逻辑驱动测试,这种测试策略是对程序的逻辑结构进行检查,从中获取测试数据。所以说白盒测试是一种以程序内部的逻辑结构为基础的测试用例设计技术。

2.解析:白盒测试是程序员十分了解程序的前提下,对程序的逻辑结构进行的测试。而黑盒测试则将程序视为一个黑盒子,仅仅是测试人员提供数人数据,观察输出数据,并不了解程序是如何运行的,结构测试属于白盒测试,关注的是如何选择合适的程序或子程序路径来执行有效的检查。功能测试则属于黑盒测试,对功能的测试通常通过提供输入数据,检查实际输出的结果,很少考虑程序的内部结构。

3.解析:程序设计过程中,要为程序调试做好准备,主要体现在:①采用模块化、结构化的设计方法设计程序;②根据程序调试的需要,选择并安排适当的中间结果输出必要的断点;③编写程序时要为调试提供足够的灵活性。

4.解析:软件测试是软件开发过程中重要和不可缺少的阶段,其包含的内容和步骤甚多,而测试过程的多种环节中最基础的是单元测试。

5.解析:在逻辑覆盖中,测试覆盖最弱的是语句覆盖。

6.解析:考察白盒测试中各种逻辑覆盖之间的关系。

7.解析:软件测试的目标是发现缺陷,证明程序有错而非证明其正确。故A不正确。

8.解析:考察黑盒测试中的等价类划分测试。

9.解析:考虑自动测试的优点就是为了解决重复的人工操作进行的。

10.解析:同行评审是一种通过作者的同行来确定缺陷和需要变更区域的检查方法。涉及的内容很多,主要可以分为管理评审、技术评审、文档评审和过程评审。

11.解析:依据测试目的的不同,可以把软件性能测试及与性能有关的其他测试分为以下几类:

(1)性能测试(Performance Testing)

(2)并发测试(Concurrency Testing)

(3)压力测试(Stress Testing)

(4)可靠性测试(Reliability Testing)

(5)负载测试(Load Testing)

(6)配置测试(Configuration Testing)

(7)失效恢复测试(Recovery Testing)

12.解析:与其他的'软件测试不同,软件可靠性测试的目的不在于通过测试揭示软件中的缺陷并通过修改软件缺陷来提高软件可靠性,而是通过受控的软件测试过程来预测软件在实际运行中的可靠性,即收集软件测试时揭示软件故障的情况,并对其进行整理从而为解析和预测软件实际的可靠性提供帮助。

13.解析:由于面向对象具有封装的特点,在设计类的测试用例时,不仅要考虑各成员方法的输入参数,还要考虑如何设计调用的序列。若类B继承自类A,如果对B进行了严格的测试,有些情况也许可以就不对类A进行测试,但由于继承的存在,就会导致类A的规格说明可能与类B不一致,此时就必须按照类A的规格说明重新对类A重新进行测试。多态是指对一个类的引用可以与多个类的实现绑定。抽象类是指只有一些成员方法而没有其实现的类,甚至有的抽象类中的所有成员方法都没有实现,在测试抽象类时,需要为抽象类构造一个子类,并实现所有抽象类没有实现的成员方法,这也说明构造抽象类的驱动程序显然比构造其他类的驱动程序复杂。

14.解析:面向对象软件的基干集成测试策略的具体测试步骤为:①对基干中的每个模块进行孤立的、充分的测试。②对基干中的所有模块进行一次性集成,形成基干子系统,并使用一个驱动模块检查使用经过一次性集成的基干。此时采用的是大突击集成方式。③对应用的控制子系统进行自顶向下的集成④集成基干和控制子系统,重新构造控制子系统。⑤对各应用子系统采用自底向上的集成策略。⑥集成基干子系统、控制子系统和各应用子系统,形成整个系统。基干集成的优点是集成了自底向上集成、自顶向下集成和大突击集成三者的优点,而对三者的缺点也进行了控制,更适合于大型复杂项目的集成。

15.解析:Web应用软件表示层的测试主要集中在客户端,测试的内容包括:

(1)排版结构的测试

(2)链接结构的测试

(3)客户端程序的测试

(4)浏览器兼容性测试

16.解析:通常Web应用软件的测试分为三层:表示层、业务层和数据层。其中表示层的测试主要集中在客户端,测试内容主要包括:①排版结构的测试,②链接结构的测试,③客户端程序的测试,④浏览器兼容性测试。

17.解析:软件兼容性的测试问题包括:

符合最新HTML版本的页面能否在浏览器中正确显示

脚本和插件是否适用于不同的浏览器,某些脚本和插件只适用于特定的浏览器,如Active X,只

有IE浏览器支持

不同的浏览器对于安全性的设置各有不同,需要测试不同浏览器是否可以为使用该Web应用提供

合适的安全设置

18.解析:易用性测试一般不仅针对应用程序,还要包括用户文档,除了对用户文档的测试,易用性测试主要包括三个方面:易安装性测试、功能易用性测试和用户界面测试。而兼容性测试是与易用性测试并列的测试方法,二者不存在包含关系。

19.解析:面向构件提供者的测试目标是:①尽可能多地揭示构件错误,②验证构件的功能、接口、行为和性能,以保证它们符合给定地构件规约,检查在特定平台和操作环境中构件的复用、打包和部署。而面向构件复用者的测试目标是:①验证可复用构件的功能和性能,②在特定平台和操作环境下,确保可复用构件的正确使用和部署,③检查可复用构件定制而成的构件的质量,④检查为特定项目而创建的新构件的质量。

20.解析:极限编程采用的是一种频繁迭代的开发方式,整个软件项目由一系列增量式开发组成。而极限测试本质上就是为了满足极限编程的思想和流程而设计的一套测试策略和流程,从极限测试流程图中,我们可以看出,单元测试和验收测试是贯穿始终的关键步骤。

21.解析:定义软件缺陷的状态如下:

新错误(New)--测试中新报告的软件缺陷

更多新信息(New More Info)--开发工程师认为报告的缺陷信息不完整,要求缺陷报告者添加更准确的缺陷信息

打开(Open)--缺陷被确认并分配给相关开发工程师处理

拒绝(Declined)--拒绝修改缺陷

修正(Fixed)--开发工程师已完成修正,等待测试人员验证

重新打开(Reopen)--没有正确修复的缺陷,需要进一步修复

延期(Diferred)--不在当前版本修复的缺陷,以后的版本修复,包括两种情况:

①延期-下个版本(Diferred-Next Build)--本项目的下一个新版本修复

②延期-下个主要版本(Diferred-Next Main Release)--本项目不修复,本软件下一个项目的版本修复关闭(Closed)--缺陷已被修复

22.解析:软件缺陷报告是软件测试过程中的核心测试产品之一,也是重要的测试产品,因此管理好软件缺陷报告是软件过程管理最起码的要求。

23.解析:假如是软件企业内部测试团队开展的软件测试,由于软件测试介入较早,在测试开始时被测系统很可能是不完整的,会不断有新的系统模块加入到系统中,因此最适合采用H模型来组织测试,可以为每一个新增的系统模块设计一次系统测试。

24.解析:软件缺陷报告是测试人员和开发人员交流的纽带。

25.解析:白盒测试又称为程序结构测试,它主要进行程序逻辑结构的覆盖测试。用QESAT/C工具进行测试之前,首先应定义项目文件,用以描述被测程序的组成,该项目文件通常以作为扩展名的。用QESAT/C工具进行软件解析与测试时,被测源文件可放在任意目录下。进行软件静态解析不必运行被测程序,便可得到程序的结构信息及程序的复杂度信息,将被测程序运行后才得到的信息就是动态测试信息。

  • 文章版权属于文章作者所有,转载请注明 https://xuezhezhai.com/jsj/siji/6g0eqr.html