试卷代号:2258 座位☐ 中央广播电视大学2008一2009学年度第二学期“开放专科”期末考试 信息系统测试试题 2009年7月 题 号 一 二 三 四 总分 分数 得分 评卷人 一、选择题(每小题2分,共30分) 1.关于软件测试的目的,下列说法错误的是()。 A.测试是程序的运行过程,目的在于发现错误 B.一个好的测试用例在于能够发现至今未发现的错误 C.一个成功的测试是发现了至今未发现的错误的测试 D.测试的目标是以最少的时间和人力改正软件中潜在的各种错误和缺陷 2.应当对程序的每一功能部分进行全面测试反映了软件测试原则中的()。 A,严格性原则 B.提早原则 C.覆盖原则 D.全面测试原则 3.在集成测试过程中,先完成对程序的各个模块的测试,然后集中起来一次完成程序的集 成进行测试,这种方法是( )。 A.自顶向下集成测试 B.非增量集成测试 C.增量集成测试 D.自底向上集成测试 1473
试卷代号:2258 座位号区口 中央广播电视大学2008-2009学年度第二学期“开放专科”期末考试 信息系统测试 试题 2009年 7月 题 号 四 总 分 分 数 得 分 评卷人 一、选择题‘每小题 2分,共30分) 1.关于软件测试的目的,下列说法错误的是( )。 A.测试是程序的运行过程,目的在于发现错误 B.一个好的测试用例在于能够发现至今未发现的错误 C.一个成功的测试是发现了至今未发现的错误的测试 D.测试的目标是以最少的时间和人力改正软件中潜在的各种错误和缺陷 2.应当对程序的每一功能部分进行全面测试反映了软件测试原则中的( )。 A.严格性原则 B.提早原则 C.覆盖原则 D.全面测试原则 3.在集成测试过程中,先完成对程序的各个模块的测试,然后集中起来一次完成程序的集 成进行测试,这种方法是( A.自顶向下集成测试 B.非增量集成测试 C.增量集成测试 D.自底 向上集成测试 1473
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.路径覆盖 1474
4.白黑盒测试中常用的几种方法是( )o A.程序结构分析、路径分析、程序插装、因果图方法 B.程序结构分析、逻辑覆盖、程序插装 C.等价类划分、边界值分析、错误推测法 、因果图方法 D.逻辑覆盖、路径分析、程序插装、错误推测法 5.软件缺陷产生的最主要原因( )。 A.编码错误 B.测试错误 C.设计错误 D.产品说明书错误 6.基于功能和软件需求规格说明书的测试,我们称这种测试为( )。 A.白盒测试 B.黑盒测试 C.灰盒测试 D.基于故障的测试 7.程序调试应该由( )完成。 A.与源程序无关的程序员 B.编制该源程序的程序员 C.不了解软件设计的机构 D.设计该软件的机构 8.召开审查会,在会中由小组成员阅读程序,以发现程序错误,同时测试员利用测试数据 人工运行程序并得出输出结果,然后由参加者对结果进行审查,以达到测试的目的。这种测试 方法是( )。 A.人工走查 C.软件审查 B.代码审查 D.错误推测法 9.需要考察模块间的接口和各模块之间联系的方法( )。 A.单元测试 B.集成测试 C.确认测试 D.系统测试 10.软件测试过程 中单元测试的意思是( )。 A.对软件中的每个子程序进行测试 B.对软件中的各个子系统进行测试 C.对软件中的各个模块进行测试 D.对软件中的各个基本过程进行测试 11.在白盒覆盖测试中,发现错误能力最弱的是( )。 A.语句覆盖 B.判定覆盖 C.条件覆盖 D.路径覆盖 1474
12.软件错误中最普遍,最受重视的三种错误是()。 A,需求错误、集成错误、系统结构错误 B.程序结构错误、数据错误、功能与性能错误 C.需求错误、程序结构错误、集成错误 D.测试定义与测试执行错误、实现和编码错误、数据错误 13.下列属于白盒测试方法的是()。 A.等价类划分 B.条件覆盖 C.因果图 D.边界值分析 14.以下对测试设计的描述不正确的是( )。 A.测试设计是系统测试工程中的一个重要问题 B.不进行测试设计,彻底测试一个庞大而又复杂的信息系统是可能的 C.测试设计是使用一个测试策略产生一个测试用例集的过程 D.测试设计是一种特殊的软件系统的设计和实现,即通过执行另一个以发现错误为 目标的软件系统来实现 15.以下对测试计划的描述中,不正确的是()。 A.测试计划,有助于测试跟踪 B.在小型软件测试项目上,不需要制定测试计划 C.正确的测试计划,有助于重复原有的测试,以便寻找新的系统缺陷,保证老的缺陷 得以修复 D.在少数高风险行业中,测试小组必须证明确实按照测试计划,执行了计划执行的测试 得分 评卷人 二、判断题(正确的划√,错的划×,每题2分,共20分)】 1.对一个软件进行了认真、严格、全面的软件测试后没有发现缺陷,则该软件没有缺陷。 () 2.软件测试的目标是以最少的时间和人力修复软件中潜在的各种错误和缺陷。() 3.人总是要犯错,因此为了有效的保证软件质量,在一个软件的开发过程中应避免使用人 工测试技术。 () 4.软件测试是为了发现错误而运行程序的过程。 () 1475
12.软件错误中最普遍,最受重视的三种错误是( )。 A.需求错误、集成错误、系统结构错误 B.程序结构错误、数据错误、功能与性能错误 C.需求错误、程序结构错误、集成错误 D.测试定义与测试执行错误、实现和编码错误、数据错误 13.下列属于白盒测试方法的是( )。 A.等价类划分 B.条件覆盖 C.因果图 D.边界值分析 14.以下对测试设计的描述不正确的是( )。 A.测试设计是系统测试工程中的一个重要问题 B.不进行测试设计,彻底测试一个庞大而又复杂的信息系统是可能的 C.测试设计是使用一个测试策略产生一个测试用例集的过程 D.测试设计是一种特殊的软件系统的设计和实现,即通过执行另一个以发现错误为 目标 的软件系统来实现 15,以下对测试计划的描述中,不正确的是( )。 A.测试计划,有助于测试跟踪 B.在小型软件测试项 目上,不需要制定测试计划 C.正确的测试计划,有助于重复原有的测试,以便寻找新的系统缺陷,保证老的缺陷 得以修复 D.在少数高风险行业中,测试小组必须证明确实按照测试计划,执行了计划执行的测试 得 分 评卷人 二、判断题(正确的划丫,错的划X,每题 2分,共20分) 1.对一个软件进行了认真、严格、全面的软件测试后没有发现缺陷,则该软件没有缺陷。 ( ) 2.软件测试的目标是以最少的时间和人力修复软件中潜在的各种错误和缺陷; ( ) 3.人总是要犯错,因此为了有效的保证软件质量,在一个软件的开发过程中应避免使用人 工测试技术 。 ( ) 4.软件测试是为了发现错误而运行程序的过程。 ( ) 1475
5.软件测试主要指程序测试,在软件生存期各个阶段所产生的文档不是软件测试的对象。 () 6.信息既是经过加工的有意义的数据,又是管理和决策的重要依据。 () 7.对一个成功的软件来说,只有经过编码、测试、再编码、再测试,这样一个不断的循环过 程,才能获得较高的产品质量。 () 8.在白盒测试中,如果语句覆盖率达到100%,就基本可以保证把所有的隐藏程序缺陷都 已经揭露出来了。 () 9.测试用例,就是以发现错误为目的而精心设计的一组测试数据和测试执行步骤。 () 10,测试部门与开发部门的耦合程度越密切,测试质量越有保证。 () 得 分 评卷人 三、简答题(每小题6分,共30分)】 1.信息系统的测试中只需采用传统的软件测试技术,是否正确?为什么? 2.软件测试的原则是什么,并说明在软件测试过程中使用这些原则的原因。 3.如果每个单元都通过了测试,把它们集成在一起难道会有什么不妥吗?集成测试是否 多此一举? 4.由于单元测试要写测试驱动程序,非常麻烦,能否等到整个系统全部开发完后,再集中 精力进行一次性地单元测试呢?为什么? 5.简述设计测试用例的原则。 得 分 评卷人 四、应用题(每小题10分,共20分)】 1,某机票销售公司在顾客购买机票的时候分4种情况出售机票:普通顾客在机票销售淡 季购买机票享受6折优惠,在机票销售旺季购买机票全价(不打折),会员顾客在机票销售淡季 购买机票享受4折优惠,在机票销售旺季购买机票8折。测试对象是按以上要求计算顾客收 费模块,按照路径覆盖法设计测试用例。 2.软件测试过程主要包括哪些阶段?每个阶段的任务是什么? 1476
5.软件测试主要指程序测试,在软件生存期各个阶段所产生的文档不是软件测试的对象。 ( ) 6.信息既是经过加工的有意义的数据,又是管理和决策的重要依据。 ( ) 7.对一个成功的软件来说,只有经过编码、测试、再编码、再测试,这样一个不断的循环过 程,才能获得较高的产品质量。 ( ) 8.在白盒测试中,如果语句覆盖率达到 10000,就基本可以保证把所有的隐藏程序缺陷都 已经揭露出来了。 ( ) 9.测试用例,就是以发现错误为目的而精心设计的一组测试数据和测试执行步骤。 ( ) 10.测试部门与开发部门的藕合程度越密切,测试质量越有保证 。 ( ) 得 分 评卷人 三、简答题 (每小题 6分 .共 30分) 1.信息系统的测试中只需采用传统的软件测试技术,是否正确?为什么? 2.软件测试的原则是什么,并说明在软件测试过程中使用这些原则的原因。 3.如果每个单元都通过了测试 ,把它们集成在一起难道会有什么不妥吗?集成测试是否 多此一举? 4.由于单元测试要写测试驱动程序,非常麻烦,能否等到整个系统全部开发完后,再集中 精力进行一次性地单元测试呢?为什么? 5.简述设计测试用例 的原则 。 得 分 评卷人 四、应用题 (每小题 10分 .共 20分) 1.某机票销售公司在顾客购买机票的时候分 4种情况出售机票:普通顾客在机票销售淡 季购买机票享受 6折优惠,在机票销售旺季购买机票全价(不打折),会员顾客在机票销售淡季 购买机票享受 4折优惠,在机票销售旺季购买机票 8折。测试对象是按以上要求计算顾客收 费模块,按照路径覆盖法设计测试用例。 2.软件测试过程主要包括哪些阶段?每个阶段的任务是什么? 1476
试卷代号:2258 中央广播电视大学2008一2009学年度第二学期“开放专科”期末考试 信息系统测试 试题答案及评分标准 (供参考) 2009年7月 一、选择题(每小题2分,共30分) 1.D 2.C 3.B 4.B 5.D 6.B 7.B 8.A 9.B 10.C 11,A 12.B 13.B 14.B 15.B 二、判断题(正确的划√,错的划X,每题2分,共20分) 4,6,7,9是正确的,其余是错误的。 三、简答题(每小题6分,共30分)】 1.答:不正确。 在信息系统开发的过程中,首先要按照软件工程的要求,利用传统的软件测试技术对信息 系统进行测试。但对信息系统除了要进行传统的软件测试外,由于信息系统本身的特性,信息 系统测试与传统的软件测试相比还有许多不同之处。信息系统测试不但需要检查和验证系统 是否完成系统功能,而且还要从最终用户的角度进行安全性和可用性测试。特别是由于网络 的不可预见性使对信息系统的测试变得更加复杂。 2.答:测试的目标是以最少的时间和人力找出软件中潜在的各种错误和缺陷。基于这样 的测试目的,软件测试的原则应该是:(1)提早原则:应当把“尽早地和不断地进行软件测试”作 为软件开发者的座右铭。据统计约60%的错误来自设计阶段以前,并且修复一个软件错误所 需的费用将随着软件生存周期的进展而上升。错误发现得越早,修复它所需的费用就越少。 反之,错误发现得越晚,修改它的费用就越高,而且是呈指数增长。(2)IPO原则:测试用例应 由测试输入数据,测试执行步骤和预期输出结果三部分组成。(3)独立测试原则:开发人员应 避免测试自己的程序。程序开发机构不应测试自己的程序。独立测试能带来客观性、专业性、 权威性和资源有保证等好处。 1477
试卷代号:2258 中央广播电视大学2008-2009学年度第二学期“开放专科”期末考试 信息系统测试 试题答案及评分标准 (供参考) 2009年 7月 一、选择题(每小题 2分,共 30分) 1. D 2. C 3. B 4. B 5. D 6. B 7. B 8. A 9. B 10. C 11.A 12.B 13.B 14.B 15.B 二、判断题(正确的划了.错的划X,每题 2分,共20分) 4,6,7,9是正确的,其余是错误的。 三、简答题(每小题 6分,共 30分) 1.答:不正确。 在信息系统开发的过程中,首先要按照软件工程的要求,利用传统的软件测试技术对信息 系统进行测试。但对信息系统除了要进行传统的软件测试外,由于信息系统本身的特性,信息 系统测试与传统的软件测试相比还有许多不同之处。信息系统测试不但需要检查和验证系统 是否完成 系统功能,而且还要从最终用户 的角度进行安全性和可用性测试。特别是 由于网络 的不可预见性使对信息系统的测试变得更加复杂。 2.答:测试的目标是以最少的时间和人力找出软件中潜在的各种错误和缺陷。基于这样 的测试 目的,软件测试的原则应该是 :(1)提早原则 :应当把“尽早地和不断地进行软件测试 ”作 为软件开发者的座右铭。据统计约 60%的错误来自设计阶段以前,并且修复一个软件错误所 需的费用将随着软件生存周期的进展而上升。错误发现得越早,修复它所需的费用就越少。 反之,错误发现得越晚,修改它的费用就越高,而且是呈指数增长。(2) IPO原则:测试用例应 由测试输人数据,测试执行步骤和预期输出结果三部分组成。(3)独立测试原则:开发人员应 避免测试 自己的程序。程序开发机构不应测试自己的程序。独立测试能带来客观性、专业性、 权威性和资源有保证等好处。 1477
3.答:要把N个单元集成一起肯定靠接口耦合,这时可能会产生在单元测试中无法发现 的问题。例如:数据通过不同的接口时可能出错;几个函数关联在一起时可能达不到预期的功 能;在某个单元里可以接受的误差可能在集成后被扩大到无法接受的程度。所以集成测试是 必要的,不是多此一举。 4.答:不能这样做,因为如果这样做,在开发过程中,缺陷会越积越多并且分布得更广、隐 裁得更深,反而导致测试与改错的代价大大增加。最糟糕的是无法估计测试与改错的工作量, 使进度失去控制。因此为图眼前省事而省略单元测试或者“偷工减料”,是“得不偿失”的做法。 5.答:(1)一个好的测试用例在于能够发现至今没有发现的错误; (2)测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成: (3)在测试用例设计时,应当包含合理的输入条件和不合理的输人条件。 四、应用题(每小题10分,共20分】 1.解: ①被测模块的程序流程图如下: 2Y 是否会员 7Y 3N 是否销售旺季 是否销售旺季 4Y 8N 5N Sum=sum+0.4 Sum=sum+0.8 Sum=sum+0.6 ②按照路径覆盖法设计测试用例如下: 是会员,是机票销售旺季,覆盖路径127,机票8折。 是会员,不是机票销售旺季,覆盖路径128,机票4折。 1478
3.答:要把 N个单元集成一起肯定靠接口藕合,这时可能会产生在单元测试中无法发现 的问题。例如:数据通过不同的接口时可能出错;几个函数关联在一起时可能达不到预期的功 能;在某个单元里可以接受的误差可能在集成后被扩大到无法接受的程度。所以集成测试是 必要 的,不是多此一举 。 4.答:不能这样做,因为如果这样做,在开发过程中,缺陷会越积越多并且分布得更广、隐 藏得更深,反而导致测试与改错的代价大大增加。最糟糕的是无法估计测试与改错的工作量 , 使进度失去控制。因此为图眼前省事而省略单元测试或者“偷工减料”,是“得不偿失”的做法。 5.答:(1)一个好的测试用例在于能够发现至今没有发现的错误; (2)测试用例应由测试输人数据和与之对应的预期输出结果这两部分组成; (3)在测试用例设计时,应当包含合理的输人条件和不合理的输人条件。 四、应用题 (每小题 10分 ,共 20分 》 1.解 : ①被测模块的程序流程图如下 : 是否会员 巅tmtU4 4Y Sum=sum*U. 4 Sum=sum*4_ 8 Sum=sum*fl.6 ②按照路径覆盖法设计测试用例如下: 是会员,是机票销售旺季 ,覆盖路径 127,机票 8折。 是会员,不是机票销售旺季,覆盖路径 128,机票 4折。 1478._
不是会员,是机票销售旺季,覆盖路径134,机票全价。(不打折) 不是会员,不是机票销售旺季,覆盖路径135,机票6折。 2.解: 一般来说,我们可以把软件测试过程按测试的先后次序分成四个阶段进行:单元测试、集 成测试、确认测试和系统测试,如图所示。 设计信息 软件需求 系统信息 模块 单元 测试 单元 集成 确认 系统 模块 测试 测试 测试 测试 单元 已测模块 模块 测试 (1)单元测试 单元测试是分别针对每个程序单元进行测试,以确保每个单元都能正常工作。在单元测 试中,大量采用白盒测试方法,以便尽可能发现程序单元内部的错误。 单元是程序的最小组成单位,它具有以下特征: ●通常可分配给某个程序员开发; ●单元可接受输人,并经过加工,产生输出或发生状态的改变; ●原则上,每个程序单元都应有规格说明; 程序单元通常与程序模块相对应,所以单元测试又称为模块测试。单元测试通常采用白 盒测试方法,由开发人员来完成,因而一般把单元测试放在编码阶段。 (2)集成测试 在集成测试过程中,首先把已经通过单元测试的模块组装起来,构成一个在设计阶段所定 义的程序结构,然后通过集成测试发现与接口有关的问题。 软件系统一般采用两种方式进行集成,非增量集成和增量集成。所以,集成测试也就分为 非增量集成测试和增量集成测试。 (3)确认测试 确认测试就是检验所开发的软件是否能按用户提出的需求运行。若能达到这一要求,则 1479
不是会员,是机票销售旺季,覆盖路径 134,机票全价。(不打折) 不是会员,不是机票销售旺季,覆盖路径 135,机票 6折。 2.解 : 一般来说,我们可以把软件测试过程按测试的先后次序分成四个阶段进行:单元测试、集 成测试、确认测试和系统测试,如图所示。 软件需求 冷一 模块 确认 测试 系统 测试 (1)单元测试 单元测试是分别针对每个程序单元进行测试,以确保每个单元都能正常工作。在单元测 试中,大量采用白盒测试方法,以便尽可能发现程序单元内部的错误。 单元是程序的最小组成单位 ,它具有 以下特征 : .通常可分配给某个程序员开发; .单元可接受输人,并经过加工,产生输出或发生状态的改变; .原则上,每个程序单元都应有规格说明; 程序单元通常与程序模块相对应,所以单元测试又称为模块测试。单元测试通常采用白 盒测试方法,由开发人员来完成,因而一般把单元测试放在编码阶段。 (2)集成测试 在集成测试过程中,首先把已经通过单元测试的模块组装起来,构成一个在设计阶段所定 义的程序结构,然后通过集成测试发现与接口有关的问题。 软件系统一般采用两种方式进行集成,非增量集成和增量集成。所以,集成测试也就分为 非增量集成测试和增量集成测试。 (3)确认测试 确认测试就是检验所开发的软件是否能按用户提出的需求运行。若能达到这一要求,则 1479
认为开发的软件是合格的。因而有时又将确认测试称为合格性测试。所谓用户需求指的是软 件规格说明书中确定的软件功能和技术指标,或是专门为测试所规定的确认准则。 在确认测试阶段,首先要进行有效性测试及软件配置审查,然后进行验收测试和Alpha-- Beta测试。 (4)系统测试 系统测试的目的是将系统已实现的功能与其设计目标进行比较,力图证明程序与其设计 目标不相符。系统测试通常是在用户真实的环境下所进行的测试,如是否能和其它软件和硬 件配套运行。 1480
认为开发的软件是合格的。因而有时又将确认测试称为合格性测试。所谓用户需求指的是软 件规格说明书中确定的软件功能和技术指标,或是专门为测试所规定的确认准则。 在确认测试阶段,首先要进行有效性测试及软件配置审查,然后进行验收测试和 A场haBeta测试。 (4)系统测试 系统测试的目的是将系统已实现的功能与其设计 目标进行比较,力图证明程序与其设计 目标不相符。系统测试通常是在用户真实的环境下所进行的测试,如是否能和其它软件和硬 件配套运行。 1480