1、软件测试的基本概念(二)及答案解析(总分:54.00,做题时间:90 分钟)一、单项选择题(总题数:27,分数:54.00)1.下列不属于动态分析的软件行为是_。(分数:2.00)A.屏幕仿真B.分支执行分析C.结构分析D.建模2.软件的集成测试工作最好由什么人员承担,以提高集成测试的效果_。(分数:2.00)A.该软件的设计人员B.不属于该软件开发组的软件设计人员C.该软件开发组的负责人D.该软件的编程人员3.计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷是属于_。(分数:2.00)A.缺陷B.故障C.失效D.缺点4.对于一个软件的各种需求,要确定其关键性类型,
2、定义关键性级别的依据是_。(分数:2.00)A.系统任务B.安全性C.技术复杂性D.以上全部5.软件测试计划的内容应包括_。(分数:2.00)A.测试目的、背景B.被测软件的功能、输入和输出C.测试内容和评价标准D.以上全部6.在指定条件下使用时,软件产品维持规定的性能水平的能力,这是指软件外部质量的_。(分数:2.00)A.效率B.易用性C.功能性D.可靠性7.软件质量是软件产品能否得到市场认可的最基本的问题,而软件测试是保证软件质量的重要手段,下面关于软件测试任务正确的是_。预防软件发生错误发现改正程序错误 提供诊断错误信息(分数:2.00)A.B.C.D.都是8.软件验证和确认是保证软件
3、质量的重要措施,它的实施应该针对_。(分数:2.00)A.程序编写阶段B.软件开发的所有阶段C.软件调试阶段D.软件设计阶段9.为了提高测试的效率,应该_。(分数:2.00)A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误的可能性大的数据作为测试数据10.软件生存期中费用消耗最大的环节是_。(分数:2.00)A.软件测试B.软件开发C.软件质量保证D.软件文档审查11.下列不属于软件本身的原因而产生的缺陷的是_。(分数:2.00)A.算法错误B.语法错误C.文档错误D.系统结构不合理12.如果一个软件产品的功能或特性没有实现,包括主
4、要功能部分丢失、次要功能完全丢失或者错误的声明,这是属于_。(分数:2.00)A.致命的错误B.严重的错误C.一般的错误D.微小的错误13.以下哪一种选项不属于软件缺陷_。(分数:2.00)A.软件没有实现产品规格说明所要求的功能B.软件中出现了产品规格说明不应该出现的功能C.软件实现了产品规格说明没有提到的功能D.软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题14.软件生存周期过程中,修改错误代价最大的阶段是_。(分数:2.00)A.需求阶段B.设计阶段C.编程阶段D.发布运行阶段15.问题还没有解决,测试人员新报告的缺陷,或验证后缺陷仍然存在,这些缺陷所处的状态是_。
5、(分数:2.00)A.激活状态B.非激活状C.己修正状态D.关闭状态16.程序独立测试的人员应是_。(分数:2.00)A.程序员自己B.同一开发组的测试成员C.第三方测试人员D.同一开发组的其他成员17.软件测试的目的是_。(分数:2.00)A.评价软件的质量B.发现软件的错误C.找出软件中所有的错误D.证明软件是正确的18.下列缺陷中,不属于加工缺陷的是_。(分数:2.00)A.算术与操作缺陷B.接口缺陷C.初始化缺陷D.静态逻辑缺陷19.证实在一个给定的外部环境中软件的逻辑正确性是_。(分数:2.00)A.验证B.确认C.测试D.调试20.以程序内部的逻辑结构为基础的测试用例设计技术属于_
6、。(分数:2.00)A.灰盒测试B.数据测试C.黑盒测试D.白盒测试21.以下选项中不属于软件缺陷状态的是_。(分数:2.00)A.激活状态B.非激活状态C.一致状态D.已修正状态22.经验表明,在程序测试中,某模块与其他模块相比,若该模块己发现并改正的错误数目较多,则该模块中残存的错误数目与其他模块相比,通常应该_。(分数:2.00)A.较少B.较多C.相似D.不确定23.从软件测试观点出发,软件缺陷由系统缺陷、加工缺陷、数据缺陷、代码缺陷和_构成。(分数:2.00)A.设计缺陷B.功能缺陷C.性能缺陷D.接口缺陷24.下面说法正确的是_。(分数:2.00)A.我们无法测试一个程序确认它没有
7、错误B.黑盒测试是逻辑驱动的测试C.穷举测试一定可以暴露数据敏感错误D.白盒测试是一种输入/输出驱动的测试25.坚持在软件开发的各个阶段实施下列哪种质量保证措施,才能在开发工程中尽早发现和预防错误,把出现的错误克服在早期_。(分数:2.00)A.技术评审B.程序测试C.文档审查D.管理评审26.在软件测试用例设计的方法中,最常用的方法是黑盒测试和白盒测试,其中不属于白盒测试所关注的是_。(分数:2.00)A.程序结构B.软件外部功能C.程序正确性D.程序内部逻辑27.软件验证和确认理论是测试过程的理论依据,其中验证是检查我们是否正在正确地建造一个产品,它强调的是_。(分数:2.00)A.过程的
8、正确性B.产品的正确性C.测试的正确性D.规格说明的正确性软件测试的基本概念(二)答案解析(总分:54.00,做题时间:90 分钟)一、单项选择题(总题数:27,分数:54.00)1.下列不属于动态分析的软件行为是_。(分数:2.00)A.屏幕仿真B.分支执行分析C.结构分析 D.建模解析:2.软件的集成测试工作最好由什么人员承担,以提高集成测试的效果_。(分数:2.00)A.该软件的设计人员B.不属于该软件开发组的软件设计人员 C.该软件开发组的负责人D.该软件的编程人员解析:3.计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷是属于_。(分数:2.00)A.缺陷
9、 B.故障C.失效D.缺点解析:4.对于一个软件的各种需求,要确定其关键性类型,定义关键性级别的依据是_。(分数:2.00)A.系统任务B.安全性C.技术复杂性D.以上全部 解析:5.软件测试计划的内容应包括_。(分数:2.00)A.测试目的、背景B.被测软件的功能、输入和输出C.测试内容和评价标准D.以上全部 解析:6.在指定条件下使用时,软件产品维持规定的性能水平的能力,这是指软件外部质量的_。(分数:2.00)A.效率B.易用性C.功能性D.可靠性 解析:分析 软件的效率是指:在规定条件下,相对于所用的资源的数量,软件产品可提供适当性能的能力。软件的易用性是指:在指定条件下使用,软件产品
10、被理解、学习、使用和吸引用户的能力。软件的功能性是指:当软件在指定条件下使用,软件产品提供明确的和隐含要求的功能的能力。软件的可靠性是指:在指定的条件下使用时,软件产品维持规定的性能水平的能力。7.软件质量是软件产品能否得到市场认可的最基本的问题,而软件测试是保证软件质量的重要手段,下面关于软件测试任务正确的是_。预防软件发生错误发现改正程序错误 提供诊断错误信息(分数:2.00)A.B.C.D.都是 解析:8.软件验证和确认是保证软件质量的重要措施,它的实施应该针对_。(分数:2.00)A.程序编写阶段B.软件开发的所有阶段 C.软件调试阶段D.软件设计阶段解析:分析 软件验证和确认理论是测
11、试过程的理论依据,验证是检查软件开发的各个阶段过程活动的结果是否满足规格说明的描述,证实各阶段之间的逻辑协调性、完备性和正确性。确认是证实在一个给定的外部环境中软件的逻辑正确性,即是否满足用户的要求。9.为了提高测试的效率,应该_。(分数:2.00)A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误的可能性大的数据作为测试数据 解析:10.软件生存期中费用消耗最大的环节是_。(分数:2.00)A.软件测试 B.软件开发C.软件质量保证D.软件文档审查解析:11.下列不属于软件本身的原因而产生的缺陷的是_。(分数:2.00)A.算法错误
12、B.语法错误C.文档错误 D.系统结构不合理解析:12.如果一个软件产品的功能或特性没有实现,包括主要功能部分丢失、次要功能完全丢失或者错误的声明,这是属于_。(分数:2.00)A.致命的错误B.严重的错误 C.一般的错误D.微小的错误解析:分析 各种软件缺陷所造成的后果是不同的,有的仅仅是不方便,有的可能是灾难性的。一般来说,问题越严重的,其处理的优先级越高,越要得到及时纠正。软件公司对缺陷严重性级别的定义不尽相同,但一般来说可以概括为以下 4种级别:(1)致命的错误,指造成系统或应用程序崩溃、死机、系统悬挂,或造成数据丢失、主要功能完全丧失等。(2)严重的错误,指功能或特性没有实现,主要功
13、能部分丧失,次要功能完全丧失,或者致命的错误声明。(3)一般的错误,指不太严重的错误,这样的软件缺陷虽然不影响系统的基本使用,但没有很好的实现功能,没有达到预期的效果。(4)微小的错误,指一些小的问题,对功能几乎没有影响,产品及属性仍可使用。13.以下哪一种选项不属于软件缺陷_。(分数:2.00)A.软件没有实现产品规格说明所要求的功能B.软件中出现了产品规格说明不应该出现的功能C.软件实现了产品规格说明没有提到的功能D.软件实现了产品规格说明所要求的功能但因受性能限制而未考虑可移植性问题 解析:分析 所谓“缺陷(Bug)”,即为计算机软件或程序中存在的某破坏正常运行能力的问题、错误,或者隐藏
14、的功能缺陷。软件缺陷的主要类型有:(1)软件没有实现产品规格说明要求的功能。(2)软件出现了不该出现的错误。(3)软件实现了说明没提到的功能。(4)软件没实现虽然规格说明中未明确提及但应实现的目标。(5)软件难理解,不易使用。14.软件生存周期过程中,修改错误代价最大的阶段是_。(分数:2.00)A.需求阶段B.设计阶段C.编程阶段D.发布运行阶段 解析:分析 在软件测试原则中强调测试人员要在软件开发的早期进行测试,如需求分析阶段就应该介入,问题发现的越早越好。发现缺陷后要尽快修复缺陷,因为随着产品开发工作的进行,一个小错误会扩散成大错误,为了修改后期的错误所做的工作要大得多,即越到后来往前返
15、工也越远,缺陷发现或解决得越迟,成本就会越高。Boehm 在书中明确指出,修正错误的代价不是随时间线性增长的,而几乎是呈指数增长的。15.问题还没有解决,测试人员新报告的缺陷,或验证后缺陷仍然存在,这些缺陷所处的状态是_。(分数:2.00)A.激活状态 B.非激活状C.己修正状态D.关闭状态解析:16.程序独立测试的人员应是_。(分数:2.00)A.程序员自己B.同一开发组的测试成员C.第三方测试人员 D.同一开发组的其他成员解析:分析 独立测试是指软件测试工作由在经济上和管理上独立于开发机构的组织进行。采用独立测试方式,无论在技术上还是管理上,都对提高软件测试的有效性具有重要意义,对软件测试
16、的客观性、专业性、权威性、资源的保证等方面都有较大的影响。17.软件测试的目的是_。(分数:2.00)A.评价软件的质量B.发现软件的错误 C.找出软件中所有的错误D.证明软件是正确的解析:18.下列缺陷中,不属于加工缺陷的是_。(分数:2.00)A.算术与操作缺陷B.接口缺陷 C.初始化缺陷D.静态逻辑缺陷解析:19.证实在一个给定的外部环境中软件的逻辑正确性是_。(分数:2.00)A.验证B.确认 C.测试D.调试解析:20.以程序内部的逻辑结构为基础的测试用例设计技术属于_。(分数:2.00)A.灰盒测试B.数据测试C.黑盒测试D.白盒测试 解析:分析 白盒测试又称为逻辑驱动测试,这种测
17、试策略是对程序的逻辑结构进行检查,从中获取测试数据。所以说白盒测试是一种以程序内部的逻辑结构为基础的测试用例设计技术。21.以下选项中不属于软件缺陷状态的是_。(分数:2.00)A.激活状态B.非激活状态C.一致状态 D.已修正状态解析:22.经验表明,在程序测试中,某模块与其他模块相比,若该模块己发现并改正的错误数目较多,则该模块中残存的错误数目与其他模块相比,通常应该_。(分数:2.00)A.较少B.较多 C.相似D.不确定解析:分析 由测试用例的原则第 5条,充分注意测试中的群集现象,这里注意的是错误有群集现象就是指测试后程序中残余的错误数与已发现的错误数目成正比,由此可知本题模块中发现
18、的错误数多,自然残余的也较多,故选择 B。23.从软件测试观点出发,软件缺陷由系统缺陷、加工缺陷、数据缺陷、代码缺陷和_构成。(分数:2.00)A.设计缺陷B.功能缺陷 C.性能缺陷D.接口缺陷解析:24.下面说法正确的是_。(分数:2.00)A.我们无法测试一个程序确认它没有错误 B.黑盒测试是逻辑驱动的测试C.穷举测试一定可以暴露数据敏感错误D.白盒测试是一种输入/输出驱动的测试解析:25.坚持在软件开发的各个阶段实施下列哪种质量保证措施,才能在开发工程中尽早发现和预防错误,把出现的错误克服在早期_。(分数:2.00)A.技术评审 B.程序测试C.文档审查D.管理评审解析:分析 由测试用例
19、的原则第 1条应当把“尽早地和不断地进行软件测试”作为软件开发人员的座右铭可得。由于软件开发的各个环节都有可能会出错,所以我们要坚持在各个阶段的技术评审,才能尽早地发现和预防错误,把出现的错误克服在早期,杜绝某些发生错误的隐患,减少开发费用,提高软件质量,而后面 B、C、D 这 3个选项都是只针对某个阶段来讲的,所以不正确,故正确答案为 A。26.在软件测试用例设计的方法中,最常用的方法是黑盒测试和白盒测试,其中不属于白盒测试所关注的是_。(分数:2.00)A.程序结构B.软件外部功能 C.程序正确性D.程序内部逻辑解析:分析 白盒测试又称为逻辑驱动测试,它对程序的逻辑结构进行检查,从中获取测
20、试数据,它不需要测试软件产品的功能。黑盒测试是另一种测试策略,它将程序视为一个黑盒子,测试目标与程序内部机制和结构完全无关,而是将重点集中放在发现程序不按其规格说明正确运行的环境条件,黑盒测试注重于测试软件的功能性需求。27.软件验证和确认理论是测试过程的理论依据,其中验证是检查我们是否正在正确地建造一个产品,它强调的是_。(分数:2.00)A.过程的正确性 B.产品的正确性C.测试的正确性D.规格说明的正确性解析:分析 软件验证和确认理论是测试过程的理论依据,验证是检查软件开发的各个阶段过程活动的结果是否满足规格说明的描述,证实各阶段之间的逻辑协调性、完备性和正确性。确认是证实在一个给定的外部环境中软件的逻辑正确性,即是否满足用户的要求。Bohem 给出了一个经典定义:验证是检查我们是否正在正确地建造一个产品,它强调的是过程的正确性。而确认是检查我们是否在建成一个正确的产品,它强调的是产品的正确性。