软件工程期末复习题
一、选择题
软件测试流程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)软件配置管理简称SCI
B)软件配置项是配置管理的基本单位
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.简述软件测试与软件调试的区别。
五、综合题
1.变量的命名规则一般规定如下:变量名的长度不多于40个字符,第一个字符必须为英文字母,其他字母可以英文字母、数字以及下划线的任意组合。请用等价分类法设计测试用例。
2.某商场在“五一”期间,顾客购物时收费有4种情况:普通顾客一次购物累计少于100元,按A类标准收费(不打折),一次购物累计多于或等于100元,按B类标准收费(打9折);会员顾客一次购物累计少于1000元,按C类标准收费(打8折),一次购物累计等于或多于1000元,按D类标准收费(打7折)。测试对象是按以上要求计算顾客收费模块,按照路径覆盖法设计测试用例。
3.下面是某程序的流程图:
(1)计算它的环路复杂性。
(2)为了完成基本路径测试,求它的一组独立的路径。
参考答案
一、选择题
1.B
2.B
3.C
4.D
5.A
6.B
7.C
8.B
9.D10.D
11.A12.B13.D14.A15.A16.A17.B18.D19.A20.D
21.C22.D23.A24.C25.D26.A27.D28.D29.B30.B
31.C32.A33.D34.B35.C36.B37.B38.A39.D40.D
二、填空题
1.错误测试结果
2.文档资料内部结构测试用例程序错误缺陷
3.输入数据输出数据
4.动态测试静态测试
5.运行程序测试用例黑盒测试白盒测试
6.人工检测计算机辅助静态分析
7.编码质量编码软件产品
8.静态分析特性
9.接口需求规格功能
10.内部结构处理过程处理过程测试
11.结构源程序内部逻辑
12.判定语句覆盖判定覆盖条件覆盖判定/条件覆盖条件组合覆盖路径覆盖
13.条件组合路径
14.循环循环次数
15.控制流程图环路基本路径
16.功能等价类划分边界值分析错误推测因果图
17.功能一句话一个短语等价类18.边界边界值第一个最后一个
19.错误推测法
20.因果功能说明判定表判定表
21.测试黑盒白盒
22.软件配置测试配置测试工具
23.单元测试集成测试确认测试系统测试
24.单元测试编码详细设计
25.模块模块接口局部数据结构重要的执行路径错误处理边界条件
26.驱动桩驱动模块桩模块
27.单元组装联合
28.非渐增式测试渐增式测试
29.自顶向下结合自底向上结合
30.驱动桩顶层软件结构图深度优先策略宽度优先策略
31.桩驱动
32.功能性能需求规格有效性
33.黑盒专门测试人员用户
34.测试测试分析实际运用