1、功能(黑盒)测试、单元测试和集成测试(一)及答案解析(总分:60.00,做题时间:90 分钟)一、B选择题/B(总题数:27,分数:27.00)1.根据等价类测试的原则,若规定了输入数据必须遵守的规则,这要确立的有效等价类个数为_,无效等价类个数为_。 A.1 个,1 个 B.1 个,0 个 C.1 个,若干个 D.1 个,2 个(分数:1.00)A.B.C.D.2.人们从长期的测试工作经验得知,大量的错误是发生在输入范围的_。 A.边界上 B.内部 C.外部 D.相互作用上(分数:1.00)A.B.C.D.3.因果图法最终生成的是_。 A.输入和输出的关系 B.测试用例 C.因果图 D.判定
2、表(分数:1.00)A.B.C.D.4.场景测试方法是基于 IBM 推行的 RUP 的测试用例生成方法,该方法的出发点是_。 A.事件流 B.数据流 C.控制流 D.用例(分数:1.00)A.B.C.D.5.事件流是同一事件不同的触发顺序和处理结果形成的,典型的事件流有_。 A.基本流 B.候补事件流 C.异常事件流 D.以上全部(分数:1.00)A.B.C.D.6.基于场景的测试方法,它的出发点是_。 B表 用例场景与路径的对应关系/B场景描述 路径场景 1 基本流场景 2 基本流、备选流 1场景 3 基本流、备选流 1、备选流 2场景 4 基本流、备选流 3场景 5 基本流、备选流 3、备
3、选流 1场景 6 基本流、备选流 3、备选流 1、备选流 2场景 7 基本流、备选流 4场景 8 基本流、备选流 3、备选流 4 A.用例 B.源程序 C.规格说明书 D.场景 (分数:1.00)A.B.C.D.7.以下不属于黑盒测试用例设计的方法是_。 A.基于用例和场景导出测试用例 B.基于有限状态机导出测试用例 C.基于状态的事件表导出测试用例 D.基于数据流和控制流导出测试用例(分数:1.00)A.B.C.D.8.下面一段小程序是判断一个长度为 n 的字符数组是否中心对称。例如,“abcddcba“或“abcdcba”就是中心对称。作为内部边界值,应填入()内的判断应是_。Bool c
4、enter-sym(char s, int n)/判断字符组 S 中的 n 个字符是否中心对称。是则函数返回 true,否则返回 falseint i=1, j=nWhile()If(Si-1!=Sj-1)return false; /i, j 从 1 开始计数, 数组从 0 开始Elsei=i+11j=j-1;Return true; A.ij B.i=j(判等) C.ij D.i!=j(判不等)(分数:1.00)A.B.C.D.9.考虑一个计算平方根的函数,其规格说明如下:(1)输入:浮点数(2)输出:浮点数(3)规格,当输入一个大于或等于零的浮点数时,函数输出其正的平方根并返回 true
5、;当输入一个小于 0的浮点数是,函数显示输出错信息“非法输入值”并返回 false。按照规范导出法,应设计的测试用例数至少应为_。 A.1 B.2 C.3 D.4(分数:1.00)A.B.C.D.10.关于测试用例技术,说法不正确的是_。 A.错误猜测法主要是基于经验的测试方法 B.规格导出法是一种逆向的测试用例技术 C.在大多数情况下,可以从单元的功能规格说明中导出等价类测试和边界值测试 D.比较测试不能够保证系统中没有错误(分数:1.00)A.B.C.D.11.下列方法中,最适合于数学计算的是_。 A.输入域测试 B.输出域测试 C.特殊值测试 D.错误猜测法(分数:1.00)A.B.C.
6、D.12.下列不属于基于接口测试的是_。 A.边界测试 B.输入域测试 C.输出域测试 D.特殊值测试(分数:1.00)A.B.C.D.13.规格说明导出的测试变化形式可以应用于_。 A.保密分析 B.安全分析 C.软件故障分析 D.以上全部(分数:1.00)A.B.C.D.14.基于风险的测试,需要在测试过程中_。 A.做一个风险的优先级列表 B.进行测试来探询每个风险 C.逐步调整测试重点 D.以上全部(分数:1.00)A.B.C.D.15.关于黑盒测试用例设计技术,说法不正确的是_。 A.规格导出的测试是根据相关的规格说明书描述来设计测试用例,每个用例用来测试一个或多个规格说明的陈述语句
7、 B.比较测试是对同一软件的不同版本进行测试 C.比较测试能够保证系统中没有错误 D.以上全部(分数:1.00)A.B.C.D.16.单元测试的测试对象不包括_。 A.设计单元 B.各个操作 C.内部消息序列 D.场景(分数:1.00)A.B.C.D.17.单元测试时,调用被测模块的是_。 A.桩模块 B.通信模块 C.驱动模块 D.代理模块(分数:1.00)A.B.C.D.18.单元接口测试是单元测试的一种,以下不属于单元接口的是_。 A.参数表 B.输入/输出文件 C.出错信息处理 D.全局量(分数:1.00)A.B.C.D.19.在单元测试过程中,“差 1 错”属于比较错误,它是指_。
8、A.不正确地多循环或少循环一次 B.不同数据类型的比较 C.不正确的逻辑运算符或优先次序 D.当遇到死循环时无法跳出循环(分数:1.00)A.B.C.D.20.下面的叙述中不是单元测试目的的是_。 A.验证代码是否与设计相符合 B.发现设计和需求中存在的缺陷 C.发现在编码过程中引入的错误 D.检查用户接口是否满足客户的需求(分数:1.00)A.B.C.D.21.下列工作不属于单元测试的工作内容的是_。 A.测试模块内程序的逻辑、功能 B.测试程序内参数的传递以及变量的引用 C.测试模块的各个接口以及接口间数据的传递关系 D.测试出错处理以及需求和设计中具体的要求(分数:1.00)A.B.C.
9、D.22.在对具有层次结构的大型软件进行单元测试时,有一种方法是从上层模块开始,由上到下进行测试。此时,用于代替被测模块调用的子模块是_。 A.桩模块 B.底层模块 C.驱动模块 D.主模块(分数:1.00)A.B.C.D.23.符合需求的代码(根据优先级别排序)通常应具备的性质有_。 A.正确性和规范性 B.清晰性和高效性 C.一致性 D.以上全部(分数:1.00)A.B.C.D.24.单元测试与集成测试的区别体现在_。 A.测试的对象不同 B.测试方法不同 C.测试时间和内容不同 D.以上全部(分数:1.00)A.B.C.D.25.单元测试与系统测试的区别是_。 A.单元测试采用白盒测试方
10、法,而系统测试采用黑盒测试方法 B.测试时间上,系统测试要晚于单元测试 C.单元测试从开发者角度考虑问题,而系统测试从用户角度上出发看问题 D.以上全部(分数:1.00)A.B.C.D.26.在单元测试中,被测模块、与其相关的驱动模块和_共同构成了测试环境。 A.调用子模块 B.主程序 C.桩模块 D.程序运行真实环境(分数:1.00)A.B.C.D.27.一个好的程序实现是要考虑各种可能出错的条件,并进行适当的出错处理,即预设各种出错处理的_。 A.现象 B.策略 C.通路 D.场景(分数:1.00)A.B.C.D.二、B论述题/B(总题数:5,分数:33.00)一个大学信息学院学生管理系统
11、软件,其学生文件 Student 记录的部分属性包括 Name、Num、Age、Sex、Dept 等,其中:Name(学生名)要求最少 2 个字符,最多 8 个字符;Num(学号)要求是 10 位无符号整数,取值范围为 20102000012010203335;Age(年龄)要求是 2 位无符号整数,取值范围为 1299;Sex(性别)是枚举型,只有两个取值 male(男)、female(女);Dept(系名)是枚举型,取值可以是 AT(自动化系)、CS(计算机系)、ET(电子系)、MN(微纳电子系)、SW(软件学院)。现有一个新开发的查询程序,要求输入学生年龄的上限 A、性别 S、系名 D,
12、利用文件 Student 查询所有年龄小于 A 岁且性别为 S 的 D 系的学生并输出这些学生的姓名和年龄。请针对此程序完成以下工作:(分数:14.00)(1).给出该查询程序的查询条件表达式。(分数:2.00)_(2).用等价类测试方法给出输入条件的等价类表。(分数:2.00)_(3).某 8 位数计算机,其十六进制常数定义为:以 0X 或 0x 开头的十六进制整数,其值的范围是-7f7f(表示十六进制时大小写字母不加区别),如 0X13,0X6A,-0x3C。 问题:根据上述条件使用等价类划分的方法设计测试用例。(分数:2.00)_(4).某函数包含 3 个变量:month, day, y
13、ear。函数的输出是输入日期后一天的日期。例如:若输入为2008 年 3 月 7 日,则函数输出应为 2008 年 3 月 8 日。要求函数的变量输入 month、day、year 均为整数值,并且满足条件:1=month=12,1=day=31,2001=year=2008。 采用等价类法为该函数设计测试用例,写出具体的等价类划分。(分数:2.00)_(5).以试卷评分和成绩统计的程序为例,说明采用边界值法设计测试用例的过程。 试卷评分和成绩统计的程序规格说明如下: 程序的输入条件由 80 个字符的记录组成。所有这些记录分为 3 组: (1)标题; (2)各题的标准答案记录(1999 道题)
14、; (3)学生的答卷描述。 程序的输出有 4 个报告: (1)按学生学号排序,每个学生的成绩和等级报告; (2)按学生的成绩进行排序; (3)平均分数及标准偏差报告; (4)试题分析报告。(分数:2.00)_(6).NextDate 函数的判定表测试用例设计。 NextDate 函数要求函数的输出是输入日期后一天的日期。例如:若输入为 2008 年 3 月 7 日,则函数输出应为 2008 年 3 月 8 日。 问题:对上述函数采用判定表方法设计测试用例。(分数:2.00)_(7).以自动饮料售货机为例,利用因果图法设计测试用例,为简化问题,假设售货机所有饮料的价格都是5 角钱,其规格如下:
15、若投入 5 角钱或 1 元钱的硬币,按下“橙汁”或“啤酒”按钮,则相应的饮料就送出来。然而,如果售货机没有零钱找,则“零钱找完”红灯亮,这时再投入 1 元硬币并按下饮料按钮后,饮料不送出来,而且 1 元硬币也退出来;若有零钱找,则“零钱找完”红灯灭,在送出饮料的同时退还 5角硬币。 问题:分析上述规格,采用基于因果图的方法设计测试用例。(分数:2.00)_一个栈(Stack)对象有 3 种状态:S1栈空;S2栈非空也非满;S3栈满。则各个状态的条件如下:S1:(t0)创建栈对象时初始化,这是系统做的;(t1)在 S2 状态下执行置空运算 setEmpty();(t2)在 S3 状态下执行置空运
16、算 setErupty();(t3)在 S2 状态下执行出栈运算 Pop();S2:(t4)在 S1 状态下执行进栈运算 Push();(t5)在 S3 状态下执行出栈运算:Pop();S3:(t6)在 S2 状态下执行进栈运算 Push()。为简化问题,似设栈 Stack 的容量为 2,栈元素的数据类型为整数。要求:(分数:6.00)(1).根据题意,画出栈对象的状态迁移图;(分数:2.00)_(2).计算该状态迁移图的 MeCabe 环路复杂性;(分数:2.00)_(3).确定基本的测试路径,要求测试路径从 S1 出发最后回到 S1,同时在状态转换时注明转换条件。(分数:2.00)_一个简
17、化的高铁售票系统的规格说明如下: 乘客未使用系统前系统处于“等待”状态,屏幕显示沿线各车站的站名。 乘客选择了到达站并按下“购票”键之后,系统进入“待付款”状态,屏幕显示票价,等待乘客付款。 如果乘客在限时之内付款,系统进入“出票”状态,打印并吐出相应车票,同时找回余额,然后系统重置回到“等待”状态。 如果乘客在限时之内未付款之前按下“取消”键取消购票,系统进入“等待”状态。 如果乘客在限时之内没有付款,系统进入“超时”状态,显示“超时”“取消购票”等信息,然后系统重置回到“等待”状态。 如果乘客在拿到车票后要求退票,在“等待”状态下按下“退票”键,系统进入“查证”状态。 如果查证成功,系统进
18、入“退票”状态。回收车票,退回票款,然后系统重置回到“等待”状态;如果查证不成功,系统进入“警告”状态,屏幕显示“车票无效”信息,然后系统重置回到“等待”状态。(分数:4.00)(1).请根据上述规格说明,画出相应的状态转换图。(分数:2.00)_(2).计算该状态转换图的圈复杂度并给出基本测试路径。(分数:2.00)_设计黑盒测试的测试用例。某图书出租商店欲开发一个租书信息管理系统,管理图书的租借业务。该系统的数据流图如下:(分数:6.00)(1).根据系统的数据流图,画出对应的程序功能图。 (提示:在程序功能图中不考虑文件和与文件交互的数据流,并可用状态和迁移来描述)(分数:2.00)_(
19、2).计算该程序功能图的 McCabe 复杂性度量。(分数:2.00)_(3).给出该程序功能图的基本测试路径集合。(分数:2.00)_在企业信息管理系统中,人员信息查询是最常见的。使用以下 3 个独立的查询条件:1)员工号(ID)2)员工姓名(Name)3)员工邮件地址(E-mail)每个查询条件可有可无,但不能都没有;且条件的取值可以是能查到的,也可以是查不到的。当出现多个查询条件时,按 IDNameE-mail 的顺序查询。如果某一条件未出现,则检查下一条件;如果某一条件出现,则检查满足该条件取值的信息是否存在:若不存在,立刻中止查询,并输出失败信息;若存在,继续下一条件查询,最后输出查
20、询结果。要求:(分数:3.00)(1).画出实现查询的程序流程图。(分数:1.50)_(2).给出一组测试路径,能覆盖程序流程图的所有分支。(分数:1.50)_功能(黑盒)测试、单元测试和集成测试(一)答案解析(总分:60.00,做题时间:90 分钟)一、B选择题/B(总题数:27,分数:27.00)1.根据等价类测试的原则,若规定了输入数据必须遵守的规则,这要确立的有效等价类个数为_,无效等价类个数为_。 A.1 个,1 个 B.1 个,0 个 C.1 个,若干个 D.1 个,2 个(分数:1.00)A.B.C. D.解析:解析 有效等价类的范围为数据遵循规则的范围,而无效等价类可能有若干个
21、,比如规定 a=0,有效等价类为 a=0,无效等价类为 a0 和 a0 两个。2.人们从长期的测试工作经验得知,大量的错误是发生在输入范围的_。 A.边界上 B.内部 C.外部 D.相互作用上(分数:1.00)A. B.C.D.解析:解析 边界值分析也是一种黑盒测试方法,是对等价类划分方法的补充。人们从长期的测试工作经验得知,大量的错误是发生在输入或输出范围的边界上,而不是在输入范围的内部。3.因果图法最终生成的是_。 A.输入和输出的关系 B.测试用例 C.因果图 D.判定表(分数:1.00)A.B.C.D. 解析:解析 因果图法设计测试用例的步骤如下:根据规格说明,分析和确定原因和结果,并
22、给每个原因和结果赋予一个标识符。分析规格说明描述的语义,找出原因和结果之间、原因和原因之间对应的关系,根据这些关系画因果图。由于语法和环境限制,有些原因和原因之间、结果和结果之间的组合不可能出现,可在因果图上用一些记号表明约束和限制条件。把因果图转换为判定表。用判定表的每一列做依据,设计测试用例。4.场景测试方法是基于 IBM 推行的 RUP 的测试用例生成方法,该方法的出发点是_。 A.事件流 B.数据流 C.控制流 D.用例(分数:1.00)A.B.C.D. 解析:解析 场景测试方法是基于 IBM 推行的 RUP 的测试用例生成方法。该方法从系统分析的结果用例出发,通过对每个用例的场景进行
23、分析,逐步实现测试用例的构造。5.事件流是同一事件不同的触发顺序和处理结果形成的,典型的事件流有_。 A.基本流 B.候补事件流 C.异常事件流 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 事件触发时的情景形成了场景,同一事件不同的触发顺序和处理结果就形成了事件流,典型的事件流有基本事件流(简称基本流)、候补事件流和异常事件流(这两者统称为备选流)。6.基于场景的测试方法,它的出发点是_。 B表 用例场景与路径的对应关系/B场景描述 路径场景 1 基本流场景 2 基本流、备选流 1场景 3 基本流、备选流 1、备选流 2场景 4 基本流、备选流 3场景 5 基本流、备选流 3、
24、备选流 1场景 6 基本流、备选流 3、备选流 1、备选流 2场景 7 基本流、备选流 4场景 8 基本流、备选流 3、备选流 4 A.用例 B.源程序 C.规格说明书 D.场景 (分数:1.00)A. B.C.D.解析:解析 场景测试方法是基于 IBM 公司提出的 RUP(统一建模语言)的测试用例生成方法。基于场景的测试方法从系统分析的结果用例出发,通过对每个用例的场景进行分析,逐步实现测试用例的构造。7.以下不属于黑盒测试用例设计的方法是_。 A.基于用例和场景导出测试用例 B.基于有限状态机导出测试用例 C.基于状态的事件表导出测试用例 D.基于数据流和控制流导出测试用例(分数:1.00
25、)A.B.C.D. 解析:解析 黑盒测试测试用例设计的方法有:基于判定表、基于因果图、基于状态图、基于场景、基于接口、基于故障、基于风险的测试。基于数据流和控制流的测试用例属于白盒测试。8.下面一段小程序是判断一个长度为 n 的字符数组是否中心对称。例如,“abcddcba“或“abcdcba”就是中心对称。作为内部边界值,应填入()内的判断应是_。Bool center-sym(char s, int n)/判断字符组 S 中的 n 个字符是否中心对称。是则函数返回 true,否则返回 falseint i=1, j=nWhile()If(Si-1!=Sj-1)return false; /
26、i, j 从 1 开始计数, 数组从 0 开始Elsei=i+11j=j-1;Return true; A.ij B.i=j(判等) C.ij D.i!=j(判不等)(分数:1.00)A.B. C.D.解析:解析 内部边界值测试可以用来发现一些内部错误,如误把“”写作“=”。而本题从题意来说,i=1,j=n,正确的程序判断是 ij。而对于测试来说,需要判断“=”这个边界条件是否成立,因此判断的条件为“i=j”。9.考虑一个计算平方根的函数,其规格说明如下:(1)输入:浮点数(2)输出:浮点数(3)规格,当输入一个大于或等于零的浮点数时,函数输出其正的平方根并返回 true;当输入一个小于 0的
27、浮点数是,函数显示输出错信息“非法输入值”并返回 false。按照规范导出法,应设计的测试用例数至少应为_。 A.1 B.2 C.3 D.4(分数:1.00)A.B. C.D.解析:解析 规范导出的测试是根据相关的规格说明书描述来设计测试用例的。每一个测试用例用来测试一个或多个规格说明的陈述语句。规范导出法就是根据陈述规范所用语句的顺序来响应地为被测单元设计测试用例。10.关于测试用例技术,说法不正确的是_。 A.错误猜测法主要是基于经验的测试方法 B.规格导出法是一种逆向的测试用例技术 C.在大多数情况下,可以从单元的功能规格说明中导出等价类测试和边界值测试 D.比较测试不能够保证系统中没有
28、错误(分数:1.00)A.B. C.D.解析:解析 规格导出的测试是根据相关的规格说明书描述来设计测试用例,每个测试用例用来测试一个或多个规格说明的陈述语句。规格导出法就是根据陈述所用语句的顺序来相应地为被测单元设计测试用例,故规格导出法是一种正向的测试用例设计技术,选项 B 说法不正确。错误猜测法主要就是基于经验的测试方法,对于一个有经验的工程师,错误猜测法可能是一个最有效的设计测试用例发现问题的方法。在大多数情况下,等价类测试和边界值测试可以从单元的功能规格说明中导出,只有单元内部的边界要从单元的结构化规格说明中找到。比较测试是对同一软件的不同版本的系统进行测试,并不能够保证系统中没有错误
29、,因为若规格说明本身有错,所有的版本都可能反映该错误,另外,若各个版本产生相同但却错误的结果,比较测试也是没有办法发现错误的。11.下列方法中,最适合于数学计算的是_。 A.输入域测试 B.输出域测试 C.特殊值测试 D.错误猜测法(分数:1.00)A.B.C. D.解析:解析 特殊值测试是指基于计算功能的特性来选择测试用例的方法,该方法尤其适用于数学计算。输入域测试的目标是选用域的代表值,从它们的执行中得到整个输入域的测试结果。输出域测试就是通过选择能够使得每个输出域达到极端值的输入数据作为测试用例来执行测试,其目标是保证单元已经被检查了的最大和最小的输出条件,并且如果可能的话,所有的错误信
30、息的分类都已经产生过了。12.下列不属于基于接口测试的是_。 A.边界测试 B.输入域测试 C.输出域测试 D.特殊值测试(分数:1.00)A. B.C.D.解析:解析 基于接口的测试是根据模块和它们相互关系的特性选择测试数据。基于接口的测试可以从下面 3 个方面来考虑: 1输入域测试 输入域测试的目标是选用域的代表值,从它们的执行中得到整个输入域的测试结果。 2特殊值测试 特殊值测试是指基于计算功能的特性来选择测试用例的方法。该方法尤其适用于数学计算。 3输出域测试 通过选择能够使得每个输出域达到极端值的输入数据作为测试用例来执行测试,就是输出域测试。13.规格说明导出的测试变化形式可以应用
31、于_。 A.保密分析 B.安全分析 C.软件故障分析 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 规格说明导出的测试是根据相关的规格说明书描述来设计测试用例的,规格说明导出测试的变化形式可以应用到保密分析、安全分析、软件故障分析,或者其他单元规格说明做出的补充文件上去。14.基于风险的测试,需要在测试过程中_。 A.做一个风险的优先级列表 B.进行测试来探询每个风险 C.逐步调整测试重点 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 若在测试过程中,首先做一个风险的优先级列表,然后进行测试来探询每个风险,之后随着老风险的消失,新风险的产生,调整测试工作重点到新风险
32、上,这样的测试便是基于风险的测试。15.关于黑盒测试用例设计技术,说法不正确的是_。 A.规格导出的测试是根据相关的规格说明书描述来设计测试用例,每个用例用来测试一个或多个规格说明的陈述语句 B.比较测试是对同一软件的不同版本进行测试 C.比较测试能够保证系统中没有错误 D.以上全部(分数:1.00)A.B.C. D.解析:解析 A 说法正确。规格导出法就是根据陈述所用语句的顺序来相应的为被测单元设计测试用例。规格导出法是一种正向的测试用例设计技术,其变化形式可以应用到保密分析、安全分析、软件故障分析或其他对单元规格说明做出补充的文件上。B 说法也是正确的。比较测试是对同一软件的不同版本进行测
33、试。就是说,针对同样的需求规格,做出不同的实现。比较测试并不能保证系统中没有错误。如果规格说明本身有错,所有的版本都可能反映该错误。另外,若各个版本产生相同但却错误的结果,比较测试也没有办法发现错误。16.单元测试的测试对象不包括_。 A.设计单元 B.各个操作 C.内部消息序列 D.场景(分数:1.00)A.B.C.D. 解析:解析 单元测试的测试对象是实现了具体功能的程序单元,一般对应详细设计中所描述的设计单元。17.单元测试时,调用被测模块的是_。 A.桩模块 B.通信模块 C.驱动模块 D.代理模块(分数:1.00)A.B.C. D.解析:解析 增量测试策略首先要对程序的每个程序单元或
34、程序部件单独进行测试,这种测试便是单元测试或模块测试或部件测试。在单元测试时,程序员必须编写一个驱动模块,用来调用被测模块并向其传送测试数据,驱动模块相当于被测模块的主程序。若该模块调用了其他模块,程序员必须编写一个桩模块,用来代替被调用的模块,桩模块可以进行少量的数据操作,不需要实现子模块的所有功能,但要根据需要来实现或代替子模块的一部分功能。18.单元接口测试是单元测试的一种,以下不属于单元接口的是_。 A.参数表 B.输入/输出文件 C.出错信息处理 D.全局量(分数:1.00)A.B.C.D. 解析:解析 单元测试从 5 个方面考虑,分别是:模块接口、出错处理、独立路径、边界条件和局部
35、数据结构。答案中,参数表和输入/输出文件属于模块接口,所以答案选 D。19.在单元测试过程中,“差 1 错”属于比较错误,它是指_。 A.不正确地多循环或少循环一次 B.不同数据类型的比较 C.不正确的逻辑运算符或优先次序 D.当遇到死循环时无法跳出循环(分数:1.00)A. B.C.D.解析:解析 “差 1 错”是指:不正确地多循环或少循环一次;迭代发散时不能退出;错误地修改了循环变量。20.下面的叙述中不是单元测试目的的是_。 A.验证代码是否与设计相符合 B.发现设计和需求中存在的缺陷 C.发现在编码过程中引入的错误 D.检查用户接口是否满足客户的需求(分数:1.00)A.B.C.D.
36、解析:解析 单元测试的目的不包含检查用户接口是否满足客户的需求。21.下列工作不属于单元测试的工作内容的是_。 A.测试模块内程序的逻辑、功能 B.测试程序内参数的传递以及变量的引用 C.测试模块的各个接口以及接口间数据的传递关系 D.测试出错处理以及需求和设计中具体的要求(分数:1.00)A.B.C. D.解析:解析 单元测试的工作内容包括对模块内程序的逻辑、功能、参数的传递、变量的引用、出错处理以及需求和设计中具体的要求等方面的测试,而集成测试的工作内容主要是验证各个接口、接口间数据的传递关系,以及模块组合后能否达到预期效果。22.在对具有层次结构的大型软件进行单元测试时,有一种方法是从上
37、层模块开始,由上到下进行测试。此时,用于代替被测模块调用的子模块是_。 A.桩模块 B.底层模块 C.驱动模块 D.主模块(分数:1.00)A. B.C.D.解析:解析 单元测试的环境并不是系统投入使用后所需的真实环境,在对具有层次结构的大型软件进行单元测试时,应建立一个满足单元测试要求的环境,由于一个模块或一个方法并不是一个独立的程序,在考虑测试时往往要同时考虑它与外界的联系,因此就要用到一些辅助模块来模拟与被测模块相联系的其他模块,这时用于代替被测模块调用的子模块叫做桩模块,它可以进行少量的数据操作,不需要实现子模块所有的功能,而相当于被测模块的主程序的是驱动模块,它接收测试数据,把这些数
38、据传送给被测模块,被测模块执行它本身的功能,然后输出实际测试的结果。23.符合需求的代码(根据优先级别排序)通常应具备的性质有_。 A.正确性和规范性 B.清晰性和高效性 C.一致性 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 单元测试中的目标是验证开发人员书写的编码是否可以按照其所设想的方式执行并产生出符合预期的结果,确保产生符合其需求的可靠程序单元。符合需求的代码(根据优先级别排序)通常应具备的性质有正确性、清晰性、规范性、一致性等。其中正确性是指代码逻辑必须正确,能够实现预期的功能;清晰性是指代码必须简明、易懂、注释准确没有歧义;规范性是指代码必须符合企业或部门所定义的共
39、同规范:一致性是指代码必须在命名上、风格上都保持统一;高效性是指代码不但满足以上性质,而且需要尽可能减少代码的执行时间。24.单元测试与集成测试的区别体现在_。 A.测试的对象不同 B.测试方法不同 C.测试时间和内容不同 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 单元测试与集成测试的区别体现在下面几个方面: 测试对象不同。单元测试对象是实现了具体功能的程序单元;而集成测试对象是概要设计规划中的模块及模块间的组合, 测试方法不同。单元测试中主要测试方法是基于代码的白盒测试;而集成测试中主要是使用基于功能的黑盒测试。 测试时间不同。集成测试要晚于单元测试。 测试内容不同。单元测
40、试主要是模块内程序的逻辑、功能、参数传递、变量引用、出错处理及需求和设计中具体要求方面的测试;而集成测试主要验证各个接口、接口之间的数据传递关系,及模块组合后能否达到预期效果。25.单元测试与系统测试的区别是_。 A.单元测试采用白盒测试方法,而系统测试采用黑盒测试方法 B.测试时间上,系统测试要晚于单元测试 C.单元测试从开发者角度考虑问题,而系统测试从用户角度上出发看问题 D.以上全部(分数:1.00)A.B.C.D. 解析:解析 两者在测试对象、测试时间、测试层次及测试性质上均有很大区别,具体说,单元测试属于白盒测试,从开发者角度考虑问题,关注的是单元的具体实现、内部逻辑结构和数据流向;
41、单元测试使问题及早暴露,便于定位解决,属于早期测试;单元测试允许多个被测单元同时进行测试。而系统测试属于黑盒测试,是从用户角度上出发看问题,主要目的是证明系统已满足用户的需要;系统测试是基于需求规格说明的;系统测试是一种后期测试,定位错误比较困难。26.在单元测试中,被测模块、与其相关的驱动模块和_共同构成了测试环境。 A.调用子模块 B.主程序 C.桩模块 D.程序运行真实环境(分数:1.00)A.B.C. D.解析:解析 单元测试环境不是系统投入使用后所需的真实环境,应建立一个满足单元测试要求的环境,才能顺利做好测试工作。由于一个模块或方法并不是一个独立的程序,在考虑测试它时要同时考虑它和外界的联系,因此要用到辅助模块来模拟与被测模块相联系的其他模块,这些辅助模块分为两种:驱动模块和桩模块。这样,被测模块、与其相关的驱动模块和桩模块共同构成了单元测试的测试环境。27.一个好的程序实现是要考虑各种可能出错的条件,并进行适当的出错处理,即预设各种出错处理的_。 A.现象 B.策略 C.通路 D.场景(分数:1.00)A.B.C. D.解析:解析 一个好的设计应能预见各种出错条件,并进行适当的出错处理,即预设各种出错处理通路。出错处理是模块功能的一部分,这种带有预见性的机制保证了在程序出错时,对出错部分及时修补,保证其逻辑上的正确性。因此,出错处理同样