1、软件测试的基本概念练习试卷 1及答案与解析 一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 在指定条件下使用时,软件产品维持规定的性能水平的能力。这是指软件外部质量的 _。 A) 效率 B) 易用性 C) 功能性 D) 可靠性 2 CMU SEI的 watts Humphrey指出:软件产品必须首先提供用户所需要的_。 A) 性能 B) 人机界面 C) 可靠性 D) 功能 3 以 下选项中不属于 ISO软件质量模型的是 _。 A) 外部质量模型 B) 使用质量模型 C) 维护质量模
2、型 D) 内部质量模型 4 下列关于软件质量模型的说法中正确的是 _。 A) 外部质量是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力 B) 容错性、通用性、结构性和通信性不全属于软件的质量特性 C) 内部质量是表征软件产品在规定条件下使用时,满足规定的和隐含的要求的程度 D) 使用质量是软件产品在规定的使用环境中规定的用户能实现规定目标的要求 5 下列选项中不属于 使用质量的属性的是 _。 A) 有效性 B) 安全性 C) 稳定性 D) 满意度 6 下列软件属性中,软件产品首要满足的应该是 _。 A) 功能需求 B) 性能需求 C) 可扩展性和灵活性 D) 容错、纠错能力
3、 7 内部质量需求包括 _。 A) 静态模型 B) 动态模型 C) 文档和源代码 D) 以上全部 8 在测试和使用软件产品过程中进行的度量是 _。 A) 内部度量 B) 外部度量 C) 使用度量 D) 性能度量 9 对于维护软件的人员来说。使用质量是 _的结果。 A) 功能性 B) 可靠性 C) 可维护性 D) 效率 10 内部度量的主要目的是 _。 A) 确保获得所需的外部质量 B) 确保获得所需的使用质量 C) 在执行前评价软件产品的质量 D) 以上全部 11 Myers在 1979年提出了一个重要观点,即软件测试的目的是为了 _。 A) 证明程序正确 B) 查找程序错误 C) 改正程序错
4、误 D) 验证程序无错误 12 坚持在软件开发的各个阶段实施下列哪种质量保证措施,才能在开发工程中尽早发现和预防错误,把出现的错误克 服在早期 _。 A) 技术评审 B) 程序测试 C) 文档审查 D) 管理评审 13 经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误数目较多,则该模块中残存的错误数目与其他模块相比,通常应该 _。 A) 较少 B) 较多 C) 相似 D) 不确定 14 下面有关测试原则的说法中正确的是 _。 A) 测试用例应由测试的输入数据和预期的输出结果两部分组成 B) 测试用例只需选取合理的输入数据 C) 程序最好由编写该程序的程序员自己来测试 D
5、) 使用测试用 例进行测试是为了检查程序是否做了它该做的事 15 为了提高测试的效率,正确的做法是 _。 A) 选择发现错误可能性大的数据作为测试用例 B) 在完成程序的编码之后再制定软件的测试计划 C) 随机选取测试用例 D) 取一切可能的输入数据作为测试用例 16 对程序的测试最好由 _来做,对程序的调试最好由来做。 A) 程序员 第三方测试机构 B) 第三方测试机构 程序员 C) 程序开发组 程序员 D) 程序开发组 程序开发组 17 在软件测试用例设计的方法中,最常用的方法是黑 盒测试和白盒测试,其中不属于白盒测试所关注的是 _。 A) 程序结构 B) 软件外部功能 C) 程序正确性
6、D) 程序内部逻辑 18 程序独立测试的人员应该是 _。 A) 程序员自己 B) 同一开发组的测试人员 C) 第三方测试人员 D) 同一开发组的其他成员 19 以下哪一种选项不属于软件缺陷 _。 A) 软件没有实现产品规格说明所要求的功能 B) 软件中出现了产品规格说明不应该出现的功能 C) 软件实现了产品规格说明没有提到的功能 D) 软件实现了产品规格说明所要求的功能 但因受性能限制而未考虑可移植性问题 20 软件生存周期过程中,修改错误代价最大的阶段是 _。 A) 需求阶段 B) 设计阶段 C) 编程阶段 D) 发布运行阶段 21 以程序内部的逻辑结构为基础的测试用例设计技术属于 _。 A
7、) 灰盒测试 B) 数据测试 C) 黑盒测试 D) 白盒测试 22 下列能表达程序未按照预期运行,但不会导致整体失效的是 _。 A) 故障 B) 异常 C) 缺点 D) 失效 23 下列关于缺陷产生原因的叙述中,不属于技术问题的是 _。 A) 文档错误,内容不正确或拼写错误 B) 系统结构不合理 C) 语法错误 D) 接口传递不匹配,导致模块集成出现问题 软件测试的基本概念练习试卷 1答案与解析 一、选择题(每小题 2分,共 50分) 下列各题 A、 B、 C、 D四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。 1 【正确答案】 D 【试题解析】 软件的
8、效率是指:在规定条件下,相对于所用的资源的数量,软件产品可提供适当性能的能力。软件的易用性是指:在指定条件下使用,软件产品被理解、学习、使用和吸引用户 的能力。软件的功能性是指:当软件在指定条件下使用,软件产品提供明确的和隐含的要求的功能的能力。软件的可靠性是指:在指定的条件下使用时,软件产品维持规定的性能水平的能力 【知识模块】 软件测试的基本概念 2 【正确答案】 D 【试题解析】 软件质量是产品、组织和体系或过程的一组固有特性,反映它们满足顾客和其他相关方面要求的程度。如 CMU SEI的 watts Humphrey指出: “软件产品必须首先提供用户所需的功能,如果做不到这一点,什么产
9、品都没有意义。其次,这个产品能够正常工作。如果产品中有 很多缺陷,不能正常工作,那么不管这种产品性能如何,用户也不会使用它。 ” 【知识模块】 软件测试的基本概念 3 【正确答案】 C 【知识模块】 软件测试的基本概念 4 【正确答案】 D 【试题解析】 外部质量是针对要求的满足程度而言的,是表征软件产品在规定条件下使用时,满足规定的和隐含的要求的程度;而内部质量则主要是根据软件产品的情况给出的,是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力的产品属性的全体,故选项 A和 C叙述刚好颠倒,另外软件的质量特性有很多种,选项 B中所述皆属于软件的质量特性,选项 D中关于使用质
10、量的叙述是完全正确的。 【知识模块】 软件测试的基本概念 5 【正确答案】 C 【知识模块】 软件测试的基本概念 6 【正确答案】 A 【试题解析】 软件产品质量的属性有很多,其中软件产品首先要满足的就是客户的功能需求。性能需求包括处理和响应时间,约束条件则是标识外部硬件、可用存储或其他现有系统对软件的限制。功能、性能和约束必须在一起进行评价。另外软件产品还应具备一定的可扩展性和灵活性,应能够有效地处理例外或异常情况,具有一定的容错、纠错能力。总之,软件质量实际上是各种特性的复杂组合。 【知识模块】 软件测试的基本概念 7 【正确答案】 D 【试题解析】 内部质量是表征软件产品在规定条件下使用
11、时,决定其满足规定的和隐含的 要求的能力的产品属性的全体。内部质量是从内部的观点看软件产品的全部特性,内部质量需求包括静态模型、动态模型、其他文档和源代码等。 【知识模块】 软件测试的基本概念 8 【正确答案】 B 【试题解析】 软件质量的度量主要是根据软件生存周期中对软件质量的要求所进行的一项活动。它主要分为三个方面:外部度量、内部度量和使用质量的度量。其中外部度量是在测试和使用软件产品过程中进行的,通过观察该软件产品的系统行为,执行对其系统行为的测量得到度量的结果;内部度量是在软件设计和编码过程中进行的,通过对中间产 品的静态分析来测量其内部质量特性;使用质量的度量是在用户使用过程中完成的
12、。 【知识模块】 软件测试的基本概念 9 【正确答案】 C 【试题解析】 使用质量是从用户观点来对软件产品提出的质量要求,所以它的度量主要是针对用户使用的绩效,而不是软件自身的特性,使用质量是面向用户的内部和外部质量的组合效果。使用质量与其他软件产品质量特性之间的关系取决于用户的类型: 对最终用户来说,使用质量主要是功能性、可靠性、易用性和效率的结果。 对维护软件的人员来说,使用质量是可维护性的结果。 对移植软件的人员来说,使用质量是可移植性的结果。 【知识模块】 软件测试的基本概念 10 【正确答案】 D 【试题解析】 内部度量是在软件设计和编码过程中,通过对中间产品的静态分析来测量其内部质
13、量特性。内部度量的主要目的是为了确保获得所需的外部质量和使用质量,用户、评价人员、测试人员和开发人员可以在产品可执行之前通过内部度量来评价软件产品的质量。 【知识模块】 软件测试的基本概念 11 【正确答案】 B 【试题解析】 Glenford J Myers于 1979年给出测试 的定义为:软件测试是为发现错误而执行的一个程序或者系统的过程。同时他给出了 3个关于测试的重要观点: 测试是为了证明程序有错,而不是证明程序正确。 一个好的测试用例在于它能发现以前未发现的错误。 一个成功的测试是发现了以前未发现的错误的测试。 【知识模块】 软件测试的基本概念 12 【正确答案】 A 【试题解析】
14、由测试用例的原则第 1条 (应当把 “尽早地和不断地进行软件测试 ”作为软件开发人员的座右铭 )可得,由于软件开发的各个环节都有可能会出错,所以我们要坚持在各个阶段的技 术评审,才能尽早地发现和预防错误,把出现的错误克服在早期,杜绝某些发生错误的隐患减少开发费用,提高软件质量,而后面 B、 C、 D三个选项都是只针对某个阶段来讲的,所以不正确,故正确答案为A。 【知识模块】 软件测试的基本概念 13 【正确答案】 B 【试题解析】 由测试用例的原则第 5条 (充分注意测试中的群集现象 ),这里需要注意的是,群集现象就是指测试后程序中残余的错误数与已发现的错误数目成正比,由此可知,模块中发现的错
15、误数多,自然残余的也较多,故选择 B。 【知识模块】 软件测试的基本概念 14 【正确答案】 A 【试题解析】 由测试用例的原则第 3条 (程序员应避免测试自己的程序 )和第 4条(在设计测试用例时,应该包括合理的和不合理的输入条件 )可知, B和 C显然不符。又由测试的目的是找错而不是证明程序正确,故 D不正确,所以由排除法得选项 A正确。 【知识模块】 软件测试的基本概念 15 【正确答案】 A 【试题解析】 由测试用例的原则第 5条 (设计测试用例时应该充分注意测试中的群集现象,即测试后程序中残存的错误数与已发现的错误数目成正比 ),故在测试时应当对错误群集的程序段进行 重点测试,以提高
16、测试的效率及测试投资的效益。目前,在软件测试领域流行一个 “80-20原则 ”,认为 80%的错误是在 20%的模块中发现的,所以在测试时如果发现某一程序模块似乎比其他程序模块有更多的错误倾向时,则应当花费较多的时间和代价测试这个程序模块,从而提高测试的效率。 【知识模块】 软件测试的基本概念 16 【正确答案】 B 【试题解析】 测试用例的原则中指明,程序员应尽可能避免测试自己编写的程序,程序开发组也应尽可能避免测试本组开发的程序,若条件允许,最好由独立于开发组和客户的第三方测试组 或测试机构进行。因为这样可能会更客观、更有效,并更容易取得成功。但是对程序的调试由程序员自己来做可能更加有效。
17、 【知识模块】 软件测试的基本概念 17 【正确答案】 B 【试题解析】 白盒测试又称为逻辑驱动测试,它对程序的逻辑结构进行检查,从中获取测试数据,它不需要测试软件产品的功能。黑盒测试是另一种测试策略,它将程序视为一个黑盒子,测试目标与程序内部机制和结构完全无关,而是将重点集中放在发现程序不按其规格说明正确运行的环境条件,黑盒测试注重于测试软件的功能性需求。 【知识模块】 软件 测试的基本概念 18 【正确答案】 C 【试题解析】 独立测试是指软件测试工作由在经济上和管理上独立于开发机构的组织进行。采用独立测试方式,无论在技术上还是管理上,都对提高软件测试的有效性具有重要意义,对软件测试的客观
18、性、专业性、权威性、资源的保证等方面都有较大的影响。 【知识模块】 软件测试的基本概念 19 【正确答案】 D 【知识模块】 软件测试的基本概念 20 【正确答案】 D 【试题解析】 在软件测试原则中强调测试人员要在软件开发的早期进行测试,如需求分析阶段就应 该介入,问题发现得越早越好。发现缺陷后要尽快修复缺陷,因为随着产品开发工作的进行,一个小错误会扩散成大错误,为了修改后期的错误所做的工作要多得多,即越到后来往前返工也越远,缺陷发现或解决得越迟,成本就会越高。 Boehm在书中明确指出,修正错误的代价不是随时间线性增长,而几乎是呈指数增长的。 【知识模块】 软件测试的基本概念 21 【正确答案】 D 【知识模块】 软件测试的基本概念 22 【正确答案】 B 【知识模块】 软件测试的基本概念 23 【正确答案】 A 【知识模块 】 软件测试的基本概念