答案分析
一、选择题
1.分析:对程序的测试最好由第三方测试机构来做,对程序的调试最好由程序员来做,故B不对。由测试用例的原则:程序员应避免测试自己的程序得C说法错误。又由测试的目的是找错而不是证明程序正确,故D不正确。
2.分析:软件测试的目的是发现软件中的错误,而非证明软件的正确性。
3.分析:软件缺陷可按软件缺陷类型或严重性进行统计,而软件缺陷类型或严重性可以分为软件系统崩溃、功能失效和容错性问题、用户友好性、性能、文字错误和增强需求等类型。
4.分析:软件测试不仅仅限于程序编码之后,而应该贯穿于软件开发的全过程。软件测试并不等于程序测试,因此,需求分析、概要设计、详细设计以及程序编码等各个阶段所得到的文档资料,包括需求规格说明、软件概要设计规格说明、软件详细设计规格说明以及源程序,都应做为软件测试的对象。
5.分析:软件的外部设计是从用户的角度对产品进行描述的,外部设计规格说明是在外部设计期间产生的文档,用户手册是另一种文档,与外部设计规格说明不同的是,它是在需求获取与定义阶段就开始建立,以后要不断细化和完善的文档。
6.分析:桌上检查(Desk Checking)是一种传统的检查方法,由程序员自己检查自己编写的程序。程序员在程序通过编译之后,进行单元测试设计之前,对源程序代码进行分析,对照错误列表进行检查,对程序推演测试数据,并补充相关的文档。桌上检查的目的就是发现程序中的错误。
7.分析:同行评审的方法很多,基于正式化程度可以分为临时评审、桌上检查、结对评审、走查、小组评审、正式评审六种,其中走查是一种非正式的评审,但在软件企业中被广泛使用。走查的方法有两种:一种是使用一些样品数据作为测试用例,一步步的执行模块,极为参与评审的一起检查以确保正确的逻辑和行为。另一种走查是按照脚本执行,通过脚本描述一个具体的任务或场景,用以说明系统如何在交互中完成预定的功能。
8.分析:条件覆盖就是指设计若干测试用例,运行被测程序,使得每个判定的每个条件的可能取值至少评价一次。本题可以取(A=8,B=6)和(A=9,B=9)这两组测试用例,这样A<=8及B>7都能够把真假各取一次,达到100%的条件覆盖率。 www.Examda.CoM
9.分析:对于一个软件,其可能的输入数据数量一般是非常惊人的,所以要想全部将其作为测试用例是不现实的,应当选择发现错误可能性大的数据作为测试用例,不能随机选取测试用例,故A正确,B、C错误。软件测试贯穿于软件开发的各个阶段,D项错误。
10.分析:在进行数据流测试时,弄清楚各类型结点的含义非常重要。输出语句、赋值语句、循环控制语句、条件语句和过程调用,都是定义语句的例子。如果执行对应这种语句的结点,就会改变该变量的存储单元的内容。输出语句、赋值语句、条件语句、循环控制语句和过程调用,都是使用语句的例子。如果执行对应这种语句的结点,不会改变该变量的存储单元内容。
11.分析:一般测试过程中使用的黑盒测试是基于功能的测试,可以看作是穷举输入测试,只有把所有可能的输入都作为测试用例使用,才能查出程序中所有的错误。黑盒测试的覆盖率取决于测试用例设计的完备性。
12.分析:软件单元测试的对象是可独立编译或汇编的程序模块或软件构件或面向对象设计中的类。而完整的、集成的计算机系统是系统测试和验收测试的测试对象。
13.分析:性能测试的目标是为了提高软件性能。对性能测试要判断出哪些模块执行得最多或者占用的机器时间最多,这些模块就将被重新检查、重新编写以便运行的更快。性能测试可以通过白盒或黑盒测试方法来测试,但在大多数实际情况下,人们都是使用黑盒测试方法来实现性能测试。
14.分析:对于性能测试来说,分析性能下降曲线往往可以从中获得很多重要信息,所谓性能下降曲线,就是指性能指标(比如响应时间和吞吐量)随用户数的增加而变化的曲线。通常分析性能下降曲线时,会首先将其分为几个区间:性能平坦区、性能轻微下降区、性能急剧下降区。其中性能平坦区是软件运行的正常状态,因此人们往往希望该区间越长越好;性能轻微下降区是软件承受高负载的缓冲区,该区间也是越长越好;性能急剧下降区不是软件的正常运行区间,这一阶段响应时间会急剧增加至用户不能忍受,吞吐量会急剧下降甚至低于单用户时的吞吐量,但该区间对于分析性能瓶颈却有很大作用,通常说来,性能急剧下降区的起始点(也称性能拐点)就是性能瓶颈出现的地方,此时进一步分析资源利用率就可以找到性能瓶颈的原因。
15.分析:对系统测试分析时,通常从用户层、应用层、子系统层、协议等几个层次入手。因为用户层面向的最终使用者是用户,因此用户层的测试主要围绕着用户界面的规范性、友好性、可操作性、系统对用户的支持,以及数据的安全性等方面展开。另外,用户层的测试通常还应注意可维护性测试和安全性测试。选项C并发性能测试属于应用层测试所关注的。
16.分析:由于系统测试的主要目标是测试开发出来的软件是否是问题空间的一个合理解,因此对于系统测试而言,面向对象软件与传统结构化软件并没有本质区别。
17.分析:面向对象设计与面向对象分析有很多的区别,不能将它们混淆。
18.分析:表示层的测试主要集中在客户端。包括四个方面:排版结构的测试、链接结构的测试、客户端程序的测试、浏览器兼容性测试。
19.分析:Web应用软件的安全性不仅仅与Web应用软件本身的开发相关。系统的安全漏洞其实也算是系统的缺陷,所以安全漏洞的检测也属于测试的范畴。对于黑客来说,攻击更主要是利用系统的已知漏洞进行,而不是黑客本身发现的新漏洞。狭义的入侵是指黑客进入或试图进入一个系统,而广义的入侵是指以任何违反安全规定的方式使用一个系统
20.分析:软件易用性测试主要包括三个方面:易安装性测试、功能易用性测试和用户界面测试,其中用户界面是用户与软件打交道的唯一渠道,用户界面是否友好在很大程度上决定了软件的易用性,因此用户界面测试是软件易用性测试最重要的一项内容,选项A说法正确。对软件功能的关联包括静态关联和动态关联两方面,其中对于静态关联的测试可以通过检查菜单完成,而对于动态关联的测试需要针对各项任务设计测试用例,以检查软件能否合理引导用户使用下一步的功能,故选项B说法不正确。使用软件的目的就是能够减少重复输入,保证数据的一致性,减轻人工劳动,提高工作效率,故选项C说法正确。软件的安装通常需要在安装手册的指导下完成,因此检查和评估软件安装手册的正确性和易用性是安装性测试的重要内容,选项D说法正确。
21.分析:测试总结是测试过程的最后一个活动,在测试报告中的内容包括:①测试项目概述,②测试用例执行情况总结,③软件缺陷报告总结,④ 被测软件评价。
22.分析:测试计划的要点有:①目标和范围:包括产品特性、质量目标、各个阶段的测试对象、目标范围和限制,②项目估算:根据历史数据和采用恰当的评估技术,对测试工作量、所需资源作出合理估算,③风险计划:测试可能存在的风险分析、识别以及风险的回避监控和管理,④日程:项目工作分解结构,并采用时限图、甘特图等方法制定时间和资源表,⑤项目资源:人员、硬件和软件等资源的组织和分配,人力资源是重点,⑥跟踪和控制机制:质量保证和控制、变更管理和控制。
23.分析:自动化测试不是万能的,它所能够完成的功能也是有限的,不可能也不要期望将所有的测试活动自动化。根据经验,自动测试只能发现20%的缺陷,而手工测试可以发现80%,A项说法错误。很多情况下,例如软件不稳定、测试结果易于人工验证但难于自动化、涉及物理交互的测试,不适合用自动化测试,C项说法错误。软件测试的目的是发现缺陷,D错误。
24.分析:为独立的配置管理而设计的并且能满足最终用户功能的一组软件称为是软件配置项。软件配置项测试的测试工作要求被测软件已通过单元测试和集成测试,对需要固化运行的软件提供固件。
25.分析:软件配置项测试是由软件的供方组织,由独立于软件开发人员实施,而系统测试是由软件的需方组织,由独立于软件开发人员实施。二者都可以委托国家认可的第三方测试机构来实施。在二者的测试工作中都满足对需要固化的软件提供固件。
二、论述题
1.分析:首先分析程序的规则说明和被测程序的功能,将其输入情况划分为有效等价类和无效等价类,然后按照等价类设计测试用例的方法设计有效的测试用例和无效的测试用例。
2.分析:软件测试过程是一种抽象的模型,用于定义软件测试的流程和方法。软件开发过程质量决定软件的质量,软件测试过程质量直接影响测试结果的准确性和有效性。
3.分析:首先根据程序的源代码,画出控制流图。然后通过控制流图可以计算出该程序的复杂度,找出所有的独立路径,根据基本路径测试法设计测试用例。
全国职称计算机考试速成过关系列套装:W .. 定价:¥133 优惠价:¥133.0 更多书籍 | |
全国职称计算机考试速成过关系列套装:W .. 定价:¥124 优惠价:¥124.0 更多书籍 |