软件工程期末试题及答案(六)选择题1.软件测试的目的是()。A)试验性运行软件B)发现软件错误C)证明软件正确D)找出软件中全部错误2.软件测试中白盒法是通过分析程序的()来设计测试用例的。A)应用范围B)内部逻辑C)功能D)输入数据3.黑盒法是根据程序的()来设计测试用例的。A)应用范围B)内部逻辑C)功能D)输入数据4.为了提高软件测试的效率,应该()。A)随机地选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后制定软件的测试计划D)选择发现错误可能性最大的数据作为测试用例5.与设计测试用例无关的文档是()。A)项目开发计划B)需求规格说明书C)设计说明书D)源程序6.测试的关键问题是()。A)如何组织软件评审B)如何选择测试用例C)如何验证程序的正确性D)如何采用综合策略7.软件测试用例主要由输入数据和()两部分组成。A)测试计划B)测试规则C)预期输出结果D)以往测试记录分析8.成功的测试是指运行测试用例后()。A)未发现程序错误B)发现了程序错误C)证明程序正确性D)改正了程序错误9.下列几种逻辑覆盖标准中,查错能力最强的是()。A)语句覆盖B)判定覆盖C)条件覆盖D)条件组合覆盖10.在黑盒测试中,着重检查输入条件组合的方法是()。A)等价类划分法B)边界值分析法C)错误推测法D)因果图法11.单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是()。A)系统功能B)局部数据结构C)重要的执行路径D)错误处理12.软件测试过程中的集成测试主要是为了发现()阶段的错误。A)需求分析B)概要设计C)详细设计D)编码13.不属于白盒测试的技术是()。A)路径覆盖B)判定覆盖C)循环覆盖D)边界值分析14.集成测试时,能较早发现高层模块接口错误的测试方法为()。A)自顶向下渐增式测试B)自底向上渐增式测试C)非渐增式测试D)系统测试15.确认测试以()文档作为测试的基础。A)需求规格说明书B)设计说明书C)源程序D)开发计划16.使用白盒测试方法时,确定测试数据应根据()和指定的覆盖标准。A)程序内部逻辑B)程序的复杂度C)使用说明书D)程序的功能17.程序的三种基本结构是()。A)过程子、程序、分程序B)顺序、选择、循环C)递归、堆栈、队列D)调用、返回、转移18.结构化程序设计的一种基本方法是()A)筛选法B)递归法C)归纳法D)逐步求精法19.软件调试的目的是()A)找出错误所在并改正之B)排除存在错误的可能性C)对错误性质进行分类D)统计出错的次数20.程序三种基本结构的共同特点是()A)不能嵌套使用B)只能用来写简单程序C)已经用硬件实现D)只有一个入口和一个出口21.下面说法正确的是()。A)经过测试没有发现错误说明程序正确B)测试的目标是为了证明程序没有错误C)成功的测试是发现了迄今尚未发现的错误的测试D)成功的测试是没有发现错误的测试22.覆盖准则最强的是()。A)语句覆盖B)判定覆盖C)条件覆盖D)路径覆盖23.发现错误能力最弱的是()。A)语句覆盖B)判定覆盖C)条件覆盖D)路径覆盖24.实际的逻辑覆盖测试中,一般以()为主设计测试用例。A)条件覆盖B)判定覆盖C)条件组合覆盖D)路径覆盖25.下面()方法能够有效地检测输入条件的各种组合可能引起的错误。A)等价类划分B)边界值分析C)错误推测D)因果图26.与确认测试阶段有关的文档是()。A)需求规格说明书B)概要设计说明书C)详细设计说明书D)源程序27.超出软件工程范围的测试是()。A)单元测试B)集成测试C)确认测试D)系统测试28.软件测试不需要了解软件设计的()。A)功能B)内部结构C)处理过程D)条件29.()方法需要考察模块间的接口和各模块之间的联系。A)单元测试B)集成测试C)确认测试D)系统测试30.调试应该由()完成。A)与源程序无关的程序员B)编制该源程序的程序员C)不了解软件设计的机构D)设计该软件的机构31.基线是软件生存期中各开发阶段的一个特定点,它可作为一个检查点,当采用的基线发生错误时,我们可以返回到最近和最恰当的()上。A)配置项B)程序C)基线D)过程32.版本管理是对系统不同版本进行的()过程A)标识与跟踪B)标识变更C)发布变更D)控制变更33.在变更控制中,管理各个用户存取和修改一个特定软件配置对象的权限是()。A)异步控制B)同步控制C)存取控制D)基线控制34.在配置管理中,“登入”和“检出”处理实现了两个重要的变更控制要素,即同步控制和()。A)异步控制B)同步控制C)基线控制D)存取控制35.按照软件配置管理的原始指导思想,受控制的对象应是()。A)软件元素B)软件配置项C)软件项目D)软件过程36.软件配置项是软件配置管理的对象,指的是软件工程过程中所产生的()。A)接口B)软件环境C)信息项D)版本37.在变更控制中,可用来确保由不同用户所执行的并发控制是()。A)异步控制B)同步控制C)存取控制D)基线控制38.以下说法错误的是()。A)软件配置管理简称SCIB)软件配置项是配置管理的基本单位C)软件配置实际上是一动态的概念D)软件工程过程中某一阶段的变更均要引起软件配置的变更39.在设计人机界面时,应主要考虑的因素有()。A)系统响应时间B)错误处理C)用户求助机制D)以上都是40.人机界面的风格大致经过了()代的演变A)一B)二C)三D)四一、填空题1.软件测试的目的是尽可能多地发现软件中存在的,将作为纠错的依据。2.测试阶段的基本任务是根据软件开发各阶段的和程序的,精心设计一组,利用这些实例执行,找出软件中潜在的各种和。3.测试用例由和预期的两部分组成。4.软件测试方法一般分为两大类:方法和方法。5.动态测试通过发现错误。根据的设计方法不同,动态测试又分为与两类。6.静态测试采用和的手段对程序进行检测。7.人工审查程序偏重于的检验,而软件审查除了审查还要对各阶段进行检验。8.计算机辅助静态分析利用工具对测试程序进行分析。9.黑盒法只在软件的处进行测试,依据说明书,检查程序是否满足要求。10.白盒法必须考虑程序的和,以检查的细节为基础,对程序中尽可能多的逻辑路径进行。11.白盒测试是测试,被测对象是,以程序的为基础设计测试用例。12.逻辑覆盖是对程序内部有存在的逻辑结构设计测试用例,根据程序内部的逻辑覆盖程度又可分为、、、、和6种覆盖技术。13.实际的逻辑覆盖测试中,一般以覆盖为主设计测试用例,然后再补充部分用例,以达到覆盖测试标准。14.循环覆盖是对程序内部有存在的逻辑结构设计测试用例,它通过限制来测试。15.基本路径测试是在程序基础上,通过分析控制构造的复杂性,导出集合,从而设计测试用例。16.黑盒测试是测试,用黑盒技术设计测试用例有4种方法:、、和。17.等价类划分从程序的说明,找出一个输入条件(通常是或),然后将每个输入条件划分成两个或多个。18.边界值分析是将测试情况作为重点目标,选取正好等于、刚刚大于或刚刚小于的测试数据。如果输入或输出域是一个有序集合,则应选取集合的元素和元素作为测试用例。19.在测试程序时,根据经验或直觉推测程序中可能存在的各种错误,称为。20.因果图的基本原理是通过画图,把用自然语言描述的转换为,最后为每一列设计一个测试用例。21.测试的综合策略是在测试中,联合使用各种方法。通常先用法设计基本的测试用例,再用法补充一些必要的测试用例。22.软件测试过程中需要3类信息:、和。23.软件测试一般经过4个测试:、、和。24.指对源程序中每一个程序单元进行测试,检查各个模块是否正确实现规定的功能,从而发现模块在编码中或算法中的错误,它涉及和的文档。25.单元测试主要测试的5个基本特征:、、、和。26.在单元测试中,需要为被测模块设计模块和模块。用来模拟被测模块的上级调用模块,用来代替被测模块所调用的模块。27.集成测试指在测试基础上,将所有模块按照设计要求组装成一个完整的系统进行的测试。也称测试或测试。28.集成测试的方法有两种:和。29.渐增式测试有两种不同的组装模块的方法:和。30.自顶向下渐增式测试不需要编写模块,只需要编写模块,其步骤是从模块开始,沿着被测程序的的控制路径逐步向下测试,它有两种组合策略:和。31.自底向上渐增式测试不需要编写模块,只需要编写模块。32.确认测试指检查软件的与是否与说明书中确定的指标相符合,又称测试。33.确认测试在模拟环境下运用测试方法,由和参加的测试。34.确认测试开始前需要制定计划,结束后要写出报告。其测试用例要选用的数据。35.软件配置审查的任务是检查软件的所有文档资料的和。36.调试也称,是在成功的测试之后才开始进行,其目的是确定错误的和,并改正错误。37.调试技术包括、、和。38.回溯法调试是从出发,而归纳法调试是从入手。39.被测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手段称为测试。40.用等价类划分法设计一个测试用例时,使其覆盖尚未被覆盖的合理等价类。41.用等价类划分法设计一个测试用例时,使其覆盖不合理等价类。42.在单元测试时,需要为被测模块设计。43.在集成测试时有两种测试方法,它们是。44.软件测试是为了而执行程序的过程。45.运行被测程序的方法称为测试。46.动态测试中,主要测试软件功能的方法称为法。47.选择测试用例,使得被测程序中每个判定的每个分支至少执行一次,这种逻辑覆盖标准称为。48.要覆盖含循环结构的所有路径是不可能的,一般通过限制来测试。49.用等价类划分法设计测试用例时,如果被测程序的某个输入条件规定了取值范围,则可确定一个合理的等在和。50.凭经验或直觉推测程序中可能存在的错误而设计测试用例的方法是。51.集成测试中的具体方法是。52.确认测试阶段的两项工作是。53.在单元测试中,测试一个模块时,需要设计。54.软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:、、、。55.SCM是一组管理整个软件生存期各阶段中的活动。56.基线的作用是把各阶段的开发工作划分得更加明确,便于检查与确认阶段成果。因此,基线可以作为项目的一个。二、名词解释1.软件测试2.静态测试3.动态测试4.黑盒测试5.白盒测试6.语句覆盖7.判定覆盖8.条件覆盖9.判定/条件覆盖10.条件组合覆盖11.路径覆盖12.测试用例13.驱动模块14.桩模块15.单元测试16.集成测试17.确认测试18.渐增式测试19.非渐增式测试20.调试21.人的因素的含义22.基线23.软件配置管理24.软件配置项三、简答题1.为什么说软件测试是软件开发中不可缺少的重要一环,但不是软件质量保证的安全网?2.软件测试的目的是什么?为什么把软件测试的目的定义为只是发现错误?3.软件测试应当遵循什么原则?为什么要遵循这些原则?4.软件测试的步骤是什么?这些测试与软件开发各阶段之间的关系?5.软件测试的过程是什么?6.单元测试、集成测试和确认测试各自主要目标是什么?它们之间有什么不同?相互有什么关系?7.什么是黑盒测试与白盒测试?它们都适应哪些测试?8.简述软件测试与软件调试的区别。9.软件配置管理的任务。10.试述第三代界面的优点。11.试述人机界面的设计过程。四、综合题1.变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字母可以英文字母、数字以及下划线的任意组合。请用等价分类法设计测试用例。2.某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例。3.下面是某程序的流程图:(1)计算它的环路复杂性。(2)为了完成基本路径测试,求它的一组独立的路径。五、选择题1.B2.B3.C4.D5.A6.B7.C8.B9.D10.D11.A1