1、计算机四级软件测试工程师-102 及答案解析(总分:77.49,做题时间:90 分钟)一、选择题(总题数:25,分数:49.50)1.不会造成比较错误的情况是A) 由于存在舍入误差可能导致浮点数运算不精确B) 使用整数除法造成表达式 x/2*2=x 不成立(假定 x 是整数)C) 不同数据类型的变量之间进行比较D) 部分变量定义后未使用(分数:2.00)A.B.C.D.2.对下列产品进行测试,要优先考虑自底向上集成策略的是 _。A采用契约式设计的产品 B高层接口变化极为频繁的产品C底层接口比较稳定的产品 D以上全部(分数:2.00)A.B.C.D.3.以下关于面向对象程序集成测试的说法中,正确
2、的是_。A) 大突击集成是一种综合运用自底向上集成与自顶向下集成的测试策略B) 自底向上集成测试比自顶向下集成测试需要开发的代码更多C) 协作集成是指将可以协作完成特定系统功能的类集成在一起进行测试D) 与自底向上集成和自顶向下集成相比,基于集成是一种更充分的集成测试策略(分数:2.00)A.B.C.D.4.文档是软件的重要组成部分,通常文档可以分为用户文档、管理文档和A) 需求文档 B) 开发文档C) 设计文档 D) 技术文档(分数:2.00)A.B.C.D.5.在软件测试中,白盒测试方法是通过分析程序的_来设计测试用例的。A) 应用范围 B) 功能 C) 内部逻辑 D) 输入数据(分数:2
3、.00)A.B.C.D.6.数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种_。A) 语句覆盖 B) 控制覆盖 C) 分支覆盖 D) 路径覆盖(分数:2.00)A.B.C.D.7.关于易用性测试,说法错误的是_。A) 用户界面测试是软件易用性测试最重要的一项内容B) 对软件功能的动态关联进行测试可以通过检查菜单完成C) 使用软件的目的就是减少重复输入,减轻人工劳动,提高工作效率D) 检查和评估软件安装手册的正确性和易用性是安装性测试的重要内容(分数:2.00)A.B.C.D.8.下列选项中,不属于软件功能易用性测试关注的内容是 _。A软件是否能帮助用户减
4、少重复的输入劳动B软件是否能在耗时较长的操作期间提供反馈C软件是否允许用户针对自己的使用习惯进行定制D软件界面中文字的显示风格(分数:2.00)A.B.C.D.9.国际标准化组织公布的国际标准 ISO 8402 将软件质量综合定义为A) 反映实体满足明确的和隐含的需求的能力的特性的总和B) 表征软件产品满足明确的和隐含的需求的能力的特性或特征的集合C) 软件产品满足明确的需求的程度的一组属性的集合D) 表征计算机系统卓越程度的所有属性的集合(分数:2.00)A.B.C.D.10.关于等价分类测试法,下列说法不正确的是_。A) 使用等价分类法设计测试方案时首先需要划分输入数据的等价类B) 等价类
5、是指某个输入域的子集和,在该子集合中各个输入数据对于揭露程序中的错误都是等效的C) 测试某个等价类的代表值就等价于对这一类其他值的测试D) 等价类的划分始终不能详尽,所以要尽量避免使用等价分类法进行测试(分数:2.00)A.B.C.D.11.关于 Web 应用软件功能测试,以下说法正确的是_。(A) 由于测试的不可穷举性,因此链接测试不需要测试所有的链接(B) Cookie 测试不在 Web 功能测试所关注的范围之内(C) Web 功能测试不能看做是对整个 Web 应用软件进行的集成测试(D) 在 Web 应用中,许多复杂的功能是通过表单完成的(分数:2.00)A.B.C.D.12.极限编程的
6、主要特点有_。A) 简单的分析设计 B) 频繁的客户交流C) 增量式开发和连续的测试 D) 以上全是(分数:2.00)A.B.C.D.13.下面与软件呵靠性有关的概念中,理解不正确的是A) 软件错误不仅包括程序代码的错误,软件开发过程中所有制品的错误及软件的文档、手册中的错误都可以归为软件错误B) 软件故障是指软件代码中的错误C) 在软件的一次运行期间,软件故障一定会导致软件失效D) 通常修改软件故障可以降低软件发生失效的概率,从而提高软件可靠性(分数:2.00)A.B.C.D.14.内部质量需求包括_。A) 静态模型B) 动态模型C) 文档和源代码D) 以上全部(分数:2.50)A.B.C.
7、D.15._是一种独立的迭代的测试模型。A) W 模型 B) V 模型C) H 模型 D) X 模型(分数:2.00)A.B.C.D.16.下列关于测试方法的叙述中不正确的是 _。A从某种角度上讲,白盒测试与黑盒测试都属于动态测试B功能测试属于黑盒测试C对功能的测试通常是要考虑程序的内部结构的D结构测试属于白盒测试(分数:1.00)A.B.C.D.17.以下说法中错误的是_。A软件配置项测试的目的是检验软件配置项与软件需求规格说明的一致性B软件配置项测试一般由软件供方组织,由独立于软件开发的人员实施,软件开发人员配合C软件配置项测试要求被测软件配置项已通过单元测试和集成测试D软件配置项测试不得
8、委托第三方实施(分数:2.00)A.B.C.D.18.一经发现并改正了程序中隐藏的缺陷,然后再重新执行以前发现这个缺陷的测试,查看此缺陷是否重现。这种测试方法被称作_。(A) 增量测试(B) 回归测试(C) 大突击测试(D) 动态测试(分数:2.00)A.B.C.D.19.同行评审,有时称为同级评审,是一种通过作者的同行来确认缺陷和需要变更区域的检查方法。它主要分为管理评审、技术评审、文档评审和_。A) 误差评审 B) 项目评审 C) 过程评审 D) 组织体系评审(分数:2.00)A.B.C.D.20.下列有关黑盒测试的叙述中,错误的是A) 黑盒测试是在不考虑源代码的情形下进行的一种软件测试方
9、法B) 最好由测试人员、最终用户和开发人员组成的团队来实施黑盒测试C) 黑盒测试主要是通过对比和分析实测结果和预期结果来发现它们之间的差异,所以黑盒测试又称为“数据驱动”测试D) 数据流测试是一种黑盒测试方法(分数:2.00)A.B.C.D.21.在软件缺陷管理实践中,使用 _ 来管理软件缺陷报告,以便于软件缺陷报告的快速存储、共享、传递和处理。A文件管理系统 B数据库管理系统C缺陷单 DExcel 电子表格文档(分数:2.00)A.B.C.D.22.在单元测试用例的设计中,使用白盒测试应达到的覆盖率目标是A) 语句覆盖率达到 100% B) 分支覆盖率达到 100%C) 覆盖程序中的主要路径
10、 D) 以上全部(分数:2.00)A.B.C.D.23.集成测试中使用的主要测试方法为_。A) 黑盒测试 B) 灰盒测试C) 回归测试 D) 白盒测试(分数:2.00)A.B.C.D.24.关于软件可靠性测试,说法不正确的是 _。A若对软件可靠性要求很高,那么必须执行软件可靠性测试B软件可靠性测试的目标是预测软件在正式运行中的可靠性C由于软件可靠性的预测依赖于出错数据的统计,软件在可靠性测试中的运行情况必须完全符合软件的实际运行情况D在实施可靠性测试之前必须保证软件已经进行严格的测试(分数:2.00)A.B.C.D.25.制定测试计划,要达到的目标有:_。(A) 为测试各项活动制定一个现实可行
11、的、综合的计划(B) 为项目实施建立一个组织模型,定义角色职责和工作内容(C) 开发有效的测试过程模型,以便能正确的验证正在开发的系统(D) 以上全都是(分数:2.00)A.B.C.D.二、论述题(总题数:1,分数:28.00)针对以下 C 语言程序,请按要求回答问题。下面是一个简单的 C 语言程序:int funcl(int a,b,c)int k=1; if(a0 | b0) k=k+a; else k=k+b; if(c0) k=k+c; return k; (分数:27.99)(1).画出该函数的程序流程图。(分数:9.33)_(2).设计测试用例,分别使函数的各种逻辑覆盖率尽量达到
12、100%。如果认为该函数的某种逻辑覆盖率无法达到 100%,需要说明原因。(分数:9.33)_(3).设计特殊的测试用例,说明各种逻辑覆盖之间的关系。(分数:9.33)_计算机四级软件测试工程师-102 答案解析(总分:77.49,做题时间:90 分钟)一、选择题(总题数:25,分数:49.50)1.不会造成比较错误的情况是A) 由于存在舍入误差可能导致浮点数运算不精确B) 使用整数除法造成表达式 x/2*2=x 不成立(假定 x 是整数)C) 不同数据类型的变量之间进行比较D) 部分变量定义后未使用(分数:2.00)A.B.C.D. 解析:解析 造成比较错误的情况有:是否存在不同数据类型的变
13、量间的比较。是否存在混合比较或不同长度的变量之间的比较。比较运算符是否正确。每个布尔表达式所表达的内容是否正确。布尔运算符对象是否是布尔类型。在二进制的计算机上是否存在小数或浮点数之间的比较,四舍五入、二进制表示十进制的近似性,往往会造成误差。对包含多个布尔运算符的表达式,计算次序以及运算符的优先顺序是否正确。编译器计算布尔表达式的方式是否对程序产生影响。2.对下列产品进行测试,要优先考虑自底向上集成策略的是 _。A采用契约式设计的产品 B高层接口变化极为频繁的产品C底层接口比较稳定的产品 D以上全部(分数:2.00)A.B.C.D. 解析:3.以下关于面向对象程序集成测试的说法中,正确的是_
14、。A) 大突击集成是一种综合运用自底向上集成与自顶向下集成的测试策略B) 自底向上集成测试比自顶向下集成测试需要开发的代码更多C) 协作集成是指将可以协作完成特定系统功能的类集成在一起进行测试D) 与自底向上集成和自顶向下集成相比,基于集成是一种更充分的集成测试策略(分数:2.00)A.B.C. D.解析:解析 大突击集成是将系统的所有组成成分一次性集成到一起进行测试,是非增量式集成测试。而自底向上集成与自顶向下集成都是增量式集成测试,三者都是传统软件测试中很常用的集成测试策略。协作集成就是在集成测试时,针对系统完成的功能,将可以相互协作完成特定功能的类集成在一起进行测试。基干集成从某种角度讲
15、,是集中了自底向上集成、自顶向下集成和大突击集成三者的优点,更适合大型复杂项目的集成,但若对于代码质量要求高,人力资源比较充足的项目,自底向上集成应该会更好。三种集成方法在测试充分性上比较应该视项目不同也不同。4.文档是软件的重要组成部分,通常文档可以分为用户文档、管理文档和A) 需求文档 B) 开发文档C) 设计文档 D) 技术文档(分数:2.00)A.B. C.D.解析:5.在软件测试中,白盒测试方法是通过分析程序的_来设计测试用例的。A) 应用范围 B) 功能 C) 内部逻辑 D) 输入数据(分数:2.00)A.B.C. D.解析:解析 白盒测试又称为逻辑驱动测试,这种测试策略是对程序的
16、逻辑结构进行检查,从中获取测试数据。所以说白盒测试是一种以程序内部的逻辑结构为基础的测试用例设计技术。6.数据流覆盖关注的是程序中某个变量从其声明、赋值到引用的变化情况,它是下列哪一种覆盖的变种_。A) 语句覆盖 B) 控制覆盖 C) 分支覆盖 D) 路径覆盖(分数:2.00)A.B.C.D. 解析:解析 数据流测试电可以看做是一种路径测试,它主要关注一条路径上变量在何时定义,何时使用,所以数据流覆盖也可以看做是路径覆盖的一种,关注变量在某条路径中的变化情况。7.关于易用性测试,说法错误的是_。A) 用户界面测试是软件易用性测试最重要的一项内容B) 对软件功能的动态关联进行测试可以通过检查菜单
17、完成C) 使用软件的目的就是减少重复输入,减轻人工劳动,提高工作效率D) 检查和评估软件安装手册的正确性和易用性是安装性测试的重要内容(分数:2.00)A.B. C.D.解析:解析 软件易用性测试主要包括 3 个方面:易安装性测试、功能易用性测试和用户界面测试,其中用户界面是用户与软件打交道的唯一渠道,用户界面是否友好在很大程度上决定了软件的易用性,因此用户界面测试是软件易用性测试最重要的一项内容,选项 A 说法正确。对软件功能的关联包括静态关联和动态关联两方面,其中对于静态关联的测试可以通过检查菜单完成,而对于动态关联的测试需要针对各项任务设计测试用例,以检查软件能否合理引导用户使用下一步的
18、功能,故选项 B 说法不正确。使用软件的目的就是能够减少重复输入,保证数据的一致性,减轻人工劳动,提高工作效率,故选项 C 说法正确。软件的安装通常需要在安装手册的指导下完成,因此检查和评估软件安装手册的正确性和易用性是安装性测试的重要内容,选项 D 说法正确。8.下列选项中,不属于软件功能易用性测试关注的内容是 _。A软件是否能帮助用户减少重复的输入劳动B软件是否能在耗时较长的操作期间提供反馈C软件是否允许用户针对自己的使用习惯进行定制D软件界面中文字的显示风格(分数:2.00)A.B.C.D. 解析:解析 功能易用性是指用户能否方便、快速、准确地使用软件提供地功能来完成需要完成的任务。一般
19、功能易用性测试涉及面很广,其主要内容有;业务符合度,功能定制性,功能的关联度,数据的共享度,用户约束的合理性,反馈的及时性。9.国际标准化组织公布的国际标准 ISO 8402 将软件质量综合定义为A) 反映实体满足明确的和隐含的需求的能力的特性的总和B) 表征软件产品满足明确的和隐含的需求的能力的特性或特征的集合C) 软件产品满足明确的需求的程度的一组属性的集合D) 表征计算机系统卓越程度的所有属性的集合(分数:2.00)A. B.C.D.解析:解析 在本题中,B 选项为 20 世纪 90 年代,Norman、Robin 等对软件质量的定义;C 选项为 1982年,Fisher 和 Baker
20、 对软件质量的定义;D 选项则是 1979 年,Fisher 和 Light 对软件质量的定义。10.关于等价分类测试法,下列说法不正确的是_。A) 使用等价分类法设计测试方案时首先需要划分输入数据的等价类B) 等价类是指某个输入域的子集和,在该子集合中各个输入数据对于揭露程序中的错误都是等效的C) 测试某个等价类的代表值就等价于对这一类其他值的测试D) 等价类的划分始终不能详尽,所以要尽量避免使用等价分类法进行测试(分数:2.00)A.B.C.D. 解析:解析 等价分类法是一种典型的黑盒测试技术。穷尽的黑盒测试需要使用所有有效的和无效的输人数据来测试程序,这是不现实的,等价分类法的实现正是克
21、服了这一点。以上几种说法,D 选项是错误的认识。11.关于 Web 应用软件功能测试,以下说法正确的是_。(A) 由于测试的不可穷举性,因此链接测试不需要测试所有的链接(B) Cookie 测试不在 Web 功能测试所关注的范围之内(C) Web 功能测试不能看做是对整个 Web 应用软件进行的集成测试(D) 在 Web 应用中,许多复杂的功能是通过表单完成的(分数:2.00)A. B.C.D.解析:12.极限编程的主要特点有_。A) 简单的分析设计 B) 频繁的客户交流C) 增量式开发和连续的测试 D) 以上全是(分数:2.00)A.B.C.D. 解析:解析 极限编程,只经过简单的分析和设计
22、就进入到编码阶段,而在编码过程中强调对已有代码的测试和开发人员与客户的交互。相对传统的软件开发方法,极限编程有很多主要特点,主要包括:简单的分析设计,频繁的客户交流,采用增量式开发方式,进行连续的测试。13.下面与软件呵靠性有关的概念中,理解不正确的是A) 软件错误不仅包括程序代码的错误,软件开发过程中所有制品的错误及软件的文档、手册中的错误都可以归为软件错误B) 软件故障是指软件代码中的错误C) 在软件的一次运行期间,软件故障一定会导致软件失效D) 通常修改软件故障可以降低软件发生失效的概率,从而提高软件可靠性(分数:2.00)A.B.C. D.解析:解析 软件故障是指软件代码中的错误,软件
23、失效则是指由软件故障引起的在软件运行期间出现的错误,一般来说在软件的一次运行期间,软件故障可能会导致软件失效,也可能不引起软件失效。14.内部质量需求包括_。A) 静态模型B) 动态模型C) 文档和源代码D) 以上全部(分数:2.50)A.B.C.D. 解析:解析 内部质量是表征软件产品在规定条件下使用时,决定其满足规定的和隐含的要求的能力的产品属性的全体。内部质量是从内部的观点看软件产品的全部特性,内部质量需求包括静态模型、动态模型、其他文档和源代码等。15._是一种独立的迭代的测试模型。A) W 模型 B) V 模型C) H 模型 D) X 模型(分数:2.00)A.B.C. D.解析:解
24、析 V 模型与 W 模型有缺陷,即它们都把软件的开发视为需求、设计和编码等一系列串行的活动,而事实上,这些活动是可以交叉进行的。H 模型揭示了一点:软件测试是一个独立的流程,贯穿于产品的整个生命周期中,与其他流程并发执行。16.下列关于测试方法的叙述中不正确的是 _。A从某种角度上讲,白盒测试与黑盒测试都属于动态测试B功能测试属于黑盒测试C对功能的测试通常是要考虑程序的内部结构的D结构测试属于白盒测试(分数:1.00)A.B.C. D.解析:解析 白盒测试是在程序员十分了解程序的前提下,对程序的逻辑结构进行的测试。而黑盒测试则将程序视为一个黑盒子,仅仅是测试人员提供输入数据,观察输出数据,并不
25、了解程序是如何运行的,结构测试属于白盒测试,关注的是如何选择合适的程序或子程序路径来执行有效的检查。功能测试则属于黑盒测试,对功能的测试通常通过提供输入数据,检查实际输出的结果,很少考虑程序的内部结构。17.以下说法中错误的是_。A软件配置项测试的目的是检验软件配置项与软件需求规格说明的一致性B软件配置项测试一般由软件供方组织,由独立于软件开发的人员实施,软件开发人员配合C软件配置项测试要求被测软件配置项已通过单元测试和集成测试D软件配置项测试不得委托第三方实施(分数:2.00)A.B.C.D. 解析:解析 软件配置项可以委托第三方实施。18.一经发现并改正了程序中隐藏的缺陷,然后再重新执行以
26、前发现这个缺陷的测试,查看此缺陷是否重现。这种测试方法被称作_。(A) 增量测试(B) 回归测试(C) 大突击测试(D) 动态测试(分数:2.00)A.B. C.D.解析:19.同行评审,有时称为同级评审,是一种通过作者的同行来确认缺陷和需要变更区域的检查方法。它主要分为管理评审、技术评审、文档评审和_。A) 误差评审 B) 项目评审 C) 过程评审 D) 组织体系评审(分数:2.00)A.B.C. D.解析:解析 同行评审(Peer Review)是一种通过作者的同行来确定缺陷和需要变更区域的检查方法。涉及的内容很多,主要可以分为管理评审、技术评审、文档评审和过程评审。20.下列有关黑盒测试
27、的叙述中,错误的是A) 黑盒测试是在不考虑源代码的情形下进行的一种软件测试方法B) 最好由测试人员、最终用户和开发人员组成的团队来实施黑盒测试C) 黑盒测试主要是通过对比和分析实测结果和预期结果来发现它们之间的差异,所以黑盒测试又称为“数据驱动”测试D) 数据流测试是一种黑盒测试方法(分数:2.00)A.B.C.D. 解析:解析 数据流可看作是一种路径测试,它主要关注在一条路径上变量在何处定义,在何处使用,它是一种白盒测试方法。21.在软件缺陷管理实践中,使用 _ 来管理软件缺陷报告,以便于软件缺陷报告的快速存储、共享、传递和处理。A文件管理系统 B数据库管理系统C缺陷单 DExcel 电子表
28、格文档(分数:2.00)A.B. C.D.解析:22.在单元测试用例的设计中,使用白盒测试应达到的覆盖率目标是A) 语句覆盖率达到 100% B) 分支覆盖率达到 100%C) 覆盖程序中的主要路径 D) 以上全部(分数:2.00)A.B.C.D. 解析:解析 单元测试中设计测试用例可以使用白盒测试也可以使用黑盒测试,但以白盒测试为主。为了度量的完整性,通常要求测试达到一定的覆盖率要求,通过覆盖率的统计可以知道测试是否充分。在白盒测试方面可以使用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、路径覆盖等技术,白盒测试应达到的覆盖率目标是语句覆盖率达到 100%;分支覆盖率达到 100%;覆盖程序
29、中的主要路径,即覆盖完成需求和设计功能的代码所在的路径和程序异常处理执行到的路径。23.集成测试中使用的主要测试方法为_。A) 黑盒测试 B) 灰盒测试C) 回归测试 D) 白盒测试(分数:2.00)A. B.C.D.解析:解析 集成测试中主要是使用基于功能的黑盒测试。24.关于软件可靠性测试,说法不正确的是 _。A若对软件可靠性要求很高,那么必须执行软件可靠性测试B软件可靠性测试的目标是预测软件在正式运行中的可靠性C由于软件可靠性的预测依赖于出错数据的统计,软件在可靠性测试中的运行情况必须完全符合软件的实际运行情况D在实施可靠性测试之前必须保证软件已经进行严格的测试(分数:2.00)A. B
30、.C.D.解析:25.制定测试计划,要达到的目标有:_。(A) 为测试各项活动制定一个现实可行的、综合的计划(B) 为项目实施建立一个组织模型,定义角色职责和工作内容(C) 开发有效的测试过程模型,以便能正确的验证正在开发的系统(D) 以上全都是(分数:2.00)A.B.C.D. 解析:二、论述题(总题数:1,分数:28.00)针对以下 C 语言程序,请按要求回答问题。下面是一个简单的 C 语言程序:int funcl(int a,b,c)int k=1; if(a0 | b0) k=k+a; else k=k+b; if(c0) k=k+c; return k; (分数:27.99)(1).
31、画出该函数的程序流程图。(分数:9.33)_正确答案:(根据源程序易得流程图,如下图所示。)解析:(2).设计测试用例,分别使函数的各种逻辑覆盖率尽量达到 100%。如果认为该函数的某种逻辑覆盖率无法达到 100%,需要说明原因。(分数:9.33)_正确答案:(经过分析不难知,上面这个程序包含:1)5 个语句:每行一个语句;2)3 个条件:a0;b0;c0;3)4 个分支:有两个 if 语句,每个 if 语句有两个分支;4)6 个条件组合:条件表达式(a0) | (b0)共有两个条件 a0 和 b0,故有 4 个条件组合;条件表达式(c0)只有一个条件 c0,故有两个条件组合。所以该程序共有
32、6 个条件组合;5)4 条路径:从程序的入口到出口的路径共有 4 条,分别是:Path1:123568Path2:123578Path3:124568Path4:124578)解析:(3).设计特殊的测试用例,说明各种逻辑覆盖之间的关系。(分数:9.33)_正确答案:(这个程序有 3 个输入:a、b、c,其输入数据组合是非常大的。下面对该程序分别应用不同的逻辑覆盖准则,设计测试用例。首先根据源程序画出程序流图比较容易,然后分析学过的所有的逻辑覆盖(如语句覆盖,分支覆盖,路径覆盖等),分析针对每种逻辑覆盖的标准来设计测试用例。通过设计测试用例来体现各种逻辑覆盖之间的关系。1语句覆盖根据语句覆盖准
33、则,只需要采用两个输入数据组合:(a,b,c)=(1,1,1)、(-1,1,1),便可以把该程序的所有 5 个语句执行一遍。2分支覆盖(判定覆盖)根据分支覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,1,1),便可以把该程序的所有 4 个分支走遍。但未考虑 b0 的情况,故不满足条件覆盖。说明满足分支覆盖的测试用例未必满足条件覆盖。3条件覆盖根据条件覆盖准则,只需要采用两个输入数据组合:(a,b,c)=(1,1,-1)、(-1,-1,1),便可以把该程序的 3 个条件的真假情况都覆盖到。由于表达式(a0)|(b0)的计算值都为真,不会执行 else 语句,即不满足分支覆盖和语句覆盖。说明满足条件覆盖的未必满足分支覆盖和语句覆盖。4条件组合覆盖根据条件组合的覆盖准则,只需要采用 4 个输入数据组合:(a,b,c)=(1,-1,1)、(1,1,1)、(-1,1,-1)、(-1,-1,-1),便可以把该程序的 6 个条件组合情况覆盖到。但执行的路径数只有 2 个,故不满足路径覆盖。说明满足条件组合的覆盖不一定满足路径覆盖。5路径覆盖根据路径覆盖的准则,只需要采用 4 个输入数据组合:(a,b,c)=(1,1,1)、(1,1,-1)、(-1,1,1)、(-1,1,-1),便可以把该程序的所有 4 条路径都覆盖。路径覆盖是最强的覆盖准则。)解析: