1、计算机四级软件测试工程师-41 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:25,分数:50.00)1.由于面向对象软件中可独立被测试的单元通常是一个类族或最小是一个独立的类,所以面向对象的单元测试可以分为几个层次,其中方法层次的测试中常用的测试技术有_。(1)等价类划分测试 (2)组合功能测试(3)递归函数测试 (4)多态消息测试(5)不变式边界测试 (6)模态类测试(7)非模态类测试 (8)多态服务测试(9)展平测试(分数:2.00)A.(2)(4)(6)(8)B.(2)(4)(5)(6)C.(1)(2)(3)(4)D.(5)(6)(7)2.下列关于面向对象分
2、析的测试策略的陈述,说法错误的是_。(分数:2.00)A.面向对象的分析直接映射问题空间,将问题空间中的实例抽象为对象B.面向对象的分析用对象的结构反映问题空间的复杂实例和复杂关系C.面向对象中用属性和操作表示实例的特性和行为D.面向对象的分析是一个功能分解的过程,是把一个系统看成可以分解的功能的集合3.将所有可以进行自动化测试的测试用例转换为测试脚本是测试步骤的哪一过程_。(分数:2.00)A.测试开发B.测试用例C.测试设计D.测试执行4.关于软件的兼容性,以下说法错误的是_。(分数:2.00)A.数据兼容性包括不同版本间的兼容性B.软件兼容性测试应包括与整机的兼容性C.平台软件的兼容性测
3、试通常比应用软件的兼容性测试更为复杂和困难D.软件兼容性应考虑与其他同类软件的兼容性5.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。(分数:2.00)A.高频集成一般采用冒烟测试的方式B.高频集成不预测每个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试C.高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块D.高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准可能会增加风险6.如果一个判定中的复合条件表达式为(A1)or(B3),则为了达到 100%的判定覆盖率,至少需要设计_测试用例。(分
4、数:2.00)A.1 个B.2 个C.3 个D.4 个7.有利于尽早和全面发现问题的模型为_。(分数:2.00)A.W 模型B.V 模型C.H 模型D.X 模型8.黑盒测试中最典型的一种测试技术是_。(分数:2.00)A.逻辑覆盖B.等价分类法C.错误猜测法D.使用综合测试策略9.单元测试与集成测试的区别,下列选项正确的是_。(1)测试对象不同 (2)测试时间不同(3)测试地点不同 (4)测试方法不同(5)测试内容不同(分数:2.00)A.(1)(2)(3)(4)B.(1)(2)(3)(5)C.(1)(2)(4)(5)D.(2)(3)(4)(5)10.依据GB/T 155322008 计算机软
5、件测试规范软件测试应由相对独立的人员进行。以下选项中不属于测试分析员具体职责的是_。(分数:2.00)A.确定测试计划、测试内容B.获取适当的资源、技术协调C.确定测试方法、测试数据生成方法D.测试(软、硬)环境、测试工具、评估测试工作的有效性11.容量测试(Volume Testing)的主要目标是_。(分数:2.00)A.测试各种资源在超负荷的情况下的运行情况B.检测系统可以处理目标内确定的数据容量C.度量系统的性能和预先定义的目标有多大差距D.验证系统从软件或者硬件失效中恢复的能力12.基于各种方式获取的需求和建立的业务对象模型和分析模型,编写系统和软件需求规格说明,提交管理机构进行需求
6、评审,这是软件生存周期中_阶段的主要任务。(分数:2.00)A.软件设计B.带 0 定计划C.系统与软件需求定义D.集成和系统测试13.测试项目的输出标准包括_。(分数:2.00)A.测试执行标准、测试分析B.缺陷描述和处理标准C.文档标准和模板、质量评估标准等D.以上全是14.下列语句通常不是作为定义结点的是_。(分数:2.00)A.输入语句B.过程调用语句C.赋值语句D.输出语句15.“成熟度”这一概念来源于美国 Carnegie Mellon 大学软件工程研究所的软件能力成熟度模型(SW-CMM),在测试支持度模型(Testability Support Model)中,分为三个级别。下
7、列哪项不属于此级别分类_。(分数:2.00)A.弱(weak)B.基本(basic)C.正常(normal)D.强(stron16.单元测试首先对通过模块接口的数据流进行测试。接口测试主要从如下几个方面考虑_。(1)模块的形参和其驱动模块送来的参数的个数、类型、次序是否一致(2)模块传送给被调用模块的参数与其桩模块的参数的个数、类型和次序是否一致(3)模块传送给库函数的变量个数、类型次序是否正确(4)全局变量的定义和用法在各个模块中是否一致(5)所使用的外部文件的属性是否正确,打开文件的语句是否正确,缓冲区大小是否与记录长度相匹配,文件结束判断处理是否一致(分数:2.00)A.(1)(3)(4
8、)(5)B.(1)(2)(4)(5)C.(2)(3)(4)(5)D.(1)(2)(3)(4)(5)17.对计算机的系统有用的系统测试类型有_。(1)恢复测试 (2)安全测试(3)应力测试 (4)性能测试(分数:2.00)A.(1)(2)B.(2)(3)C.(2)(3)(4)D.(1)(2)(3)(4)18.可能给项目成本、进度和质量带来坏的影响的事情被称作_。(分数:2.00)A.灾难B.意外C.风险D.缺陷19.软件可靠性测试过程的正确顺序为_。(分数:2.00)A.定义软件运行剖面、设计测试用例、确定可靠性目标、实施可靠性测试、分析测试结果B.确定可靠性目标、定义软件运行剖面、设计测试用例
9、、实施可靠性测试、分析测试结果C.设计测试用例、定义软件运行剖面、确定可靠性目标、实施可靠性测试、分析测试结果D.确定可靠性目标、设计测试用例、定义软件运行剖面、实施可靠性测试、分析测试结果20.阅读以下程序,采用逻辑覆盖进行测试,下列测试用例(a,b,c)的输入值,可以达到条件覆盖的是_。Int func(int a,b,c)Int k=1:If(a0)1 1(b0)l I(a+c0)k=k+a:Else k=k+b:If(c0)k=k+c;Return k(分数:2.00)A.(1,1,1),(-1,1,1)B.(1,1,1),(-1,-1,-1)C.(1,1,-1),(1,1,1)D.(
10、1,1,-1),(-1,1,1)21.下列关于极限编程的说法中,不正确的是_。(分数:2.00)A.极限编程的主要优点是可以随时应对新增或改变的需求B.极限编程的主要缺点是编码人员的自由度过大C.极限编程的单元测试由专门的测试人员完成,编码人员不参与其中D.验收测试主要由用户完成22.针对逻辑覆盖,下列叙述不正确的是_。(分数:2.00)A.达到 100%CC 要求就一定能够满足 100%DC 的要求B.达到 100%CDC 要求就一定能够满足 100%DC 的要求C.达到 100%MCDC 要求就一定能够满足 100%DC 的要求D.达到 100%路径覆盖要求就一定能够满足 100%DC 的
11、要求23.Web 应用软件的三层体系结构是:表示层、业务层和数据层。三者的位置依次是_。(分数:2.00)A.客户端 服务器端 客户端B.客户端 服务器端 服务器端C.服务器端 客户端 服务器端D.客户端 客户端 服务器端24.关于对软件测试定义的理解,下边哪句话是正确的_。(分数:2.00)A.应用系统开发完毕,再对它进行测试B.软件开发中产生的错误都源于编码阶段的错误代码C.测试是我们考查并理解与发布的软件系统有关的利益和风险状况的过程D.完备的测试能够详尽地表明软件中不存在的错误25.关于 C/S 结构和 B/S 结构的比较,下列说法中不正确的是_。(分数:2.00)A.两种结构所描述的
12、都是远程应用访问的模式,从客户端程序向服务器发起请求的方式来看,并没有很大的不同B.从应用模式的发展来看,B/S 结构的应用范围越来越广,但 C/S 仍旧拥有 B/S 所无法替代的优势C.C/s 对于传输协议没有特定的要求,相对 HTTP 协议,底层协议的通信效率更高D.B/S 的缺点在于业务扩展方式比较麻烦,不能像 C/S 那样增加网页即可增加服务二、论述题(总题数:3,分数:50.00)以下是某 C 语言程序,此程序根据输入的学生成绩得出成绩的等级,请仔细阅读程序并完成要求。int scorelevel(int score)int level:if(score100|score0)leve
13、l=-1;else if(score=90)level=1;else if(score=80)level=2;else if(score70)level=3;else if(score=60)level=4;else level=5:return level:(分数:21.00)(1).画出上面程序的控制流图。(分数:7.00)_(2).给出满足基本路径覆盖的路径集合。(分数:7.00)_(3).设计覆盖基本路径的测试用例集合。(分数:7.00)_以下是某 C 语言程序,用来求一个数的绝对值,请仔细阅读程序并完成要求。#include“stdi.h“main()float x,y;scanf(
14、“%f“,x);if(x0)y=x;elsey=-x;printf(“%f“,y);getch();(分数:14.00)(1).画出此程序主函数的控制流程图。(分数:7.00)_(2).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句或分支覆盖率无法达到 100%,需说明为什么。(分数:7.00)_以下是 QESuite Web Version 1.0 用户手册的内容,请按要求回答问题。(分数:15.00)(1).下图是问题报告的管理过程。请给出问题报告的各个状态,并进行适当的描述。(分数:7.50)_(2).给出问题报告中回归测试的操作步骤和
15、退出回归测试的操作步骤。(分数:7.50)_计算机四级软件测试工程师-41 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:25,分数:50.00)1.由于面向对象软件中可独立被测试的单元通常是一个类族或最小是一个独立的类,所以面向对象的单元测试可以分为几个层次,其中方法层次的测试中常用的测试技术有_。(1)等价类划分测试 (2)组合功能测试(3)递归函数测试 (4)多态消息测试(5)不变式边界测试 (6)模态类测试(7)非模态类测试 (8)多态服务测试(9)展平测试(分数:2.00)A.(2)(4)(6)(8)B.(2)(4)(5)(6)C.(1)(2)(3)(4)D
16、.(5)(6)(7) 解析:解析 面向对象的单元测试分为方法层次的测试,其主要测试技术有等价类测试、阻隔功能测试、递归函数测试、多态消息测试;类层次的测试,其主要测试技术有不变式边界测试、模态类测试、非模态类测试;类树层次的测试,其常用的测试技术有多态服务测试和展平测试。2.下列关于面向对象分析的测试策略的陈述,说法错误的是_。(分数:2.00)A.面向对象的分析直接映射问题空间,将问题空间中的实例抽象为对象B.面向对象的分析用对象的结构反映问题空间的复杂实例和复杂关系C.面向对象中用属性和操作表示实例的特性和行为D.面向对象的分析是一个功能分解的过程,是把一个系统看成可以分解的功能的集合 解
17、析:解析 传统的面向过程分析是一个功能分解的过程,是把一个系统看成可以分解的功能的集合。而关于面向对象的分析,A、B、C 的说法都是正确的,面向对象分析的结果是为后面阶段类的选定和实现、类层次结构的组织和实现提供平台。3.将所有可以进行自动化测试的测试用例转换为测试脚本是测试步骤的哪一过程_。(分数:2.00)A.测试开发 B.测试用例C.测试设计D.测试执行解析:解析 测试开发的过程是指:将所有的可以进行自动化测试的测试用例转换为测试脚本,输入就是基于测试需求的测试用例;输出则是测试脚本和与之对应的期望结果。4.关于软件的兼容性,以下说法错误的是_。(分数:2.00)A.数据兼容性包括不同版
18、本间的兼容性B.软件兼容性测试应包括与整机的兼容性 C.平台软件的兼容性测试通常比应用软件的兼容性测试更为复杂和困难D.软件兼容性应考虑与其他同类软件的兼容性解析:解析 所谓兼容性测试,是指针对软件对其运行环境的依赖进行测试,以验证软件是否能够在所有期望的环境中运行。通常,兼容性测试主要考虑硬件、软件和数据三个方面。而软件兼容性测试的内容有:与操作系统的兼容性、与数据库的兼容性、与浏览器的兼容性、与中间件的兼容性、与其他软件的兼容性、与平台软件的兼容性。5.在面向对象软件的集成测试中,下列关于高频集成的叙述,不正确的是_。(分数:2.00)A.高频集成一般采用冒烟测试的方式B.高频集成不预测每
19、个测试用例的预期效果,如果测试中未出现反常情况,就认为通过测试C.高频集成的优点:高效、可预测性、并行性、尽早查处错误、易进行错误定位但必须要桩模块 D.高频集成的缺点:若测试包过于简单,可能难以发现问题;开始不能平稳集成;若没有建立适当标准可能会增加风险解析:解析 高频测试的优点为:高效性、可预测性、并行性、尽早查处错误、易进行错误定位、对桩模块的需要是不必需的。也就是说有些软件的集成不需要桩模块就可以完成测试。6.如果一个判定中的复合条件表达式为(A1)or(B3),则为了达到 100%的判定覆盖率,至少需要设计_测试用例。(分数:2.00)A.1 个B.2 个 C.3 个D.4 个解析:
20、解析 判定覆盖就是指设计若干测试用例,运行被测程序,使得程序中每个判定的取真分支和取假分支至少评价一次。针对该题取 A=2,B=3 和 A=0,B=9 两组测试用例即可达到 100%的判定覆盖率,故本题选择 B。7.有利于尽早和全面发现问题的模型为_。(分数:2.00)A.W 模型 B.V 模型C.H 模型D.X 模型解析:解析 W 模型指出软件各个开发阶段中应同步进行的验证和确认活动,即测试与开发也应是同步进行的。W 模型有利于尽早和全面发现问题。8.黑盒测试中最典型的一种测试技术是_。(分数:2.00)A.逻辑覆盖B.等价分类法 C.错误猜测法D.使用综合测试策略解析:解析 等价分类是一种
21、典型的黑盒测试技术。穷尽的黑盒测试需要使用所有的有效的和无效的输入数据来测试程序,这是不现实的。只能选取少量最有代表性的输入数据,以期用较小的测试集测试出较多的程序错误。等价分类法正是力图设计出一个能发现若干类错误的测试用例,从而减少必须设计的测试用例的数目。9.单元测试与集成测试的区别,下列选项正确的是_。(1)测试对象不同 (2)测试时间不同(3)测试地点不同 (4)测试方法不同(5)测试内容不同(分数:2.00)A.(1)(2)(3)(4)B.(1)(2)(3)(5)C.(1)(2)(4)(5) D.(2)(3)(4)(5)解析:解析 单元测试的对象是实现了具体功能的程序单元;而集成测试
22、对象是概要设计规划中的模块及模块间的组合。单元测试中的主要测试方法是基于代码的白盒测试;而集成测试中主要是使用基于功能的黑盒测试。此条错误,地点并不属于软件测试的特有条件约束。集成测试要晚于单元测试。单元测试主要是模块内程序的逻辑、功能、参数传递、变量引用、出错处理及需求分析和设计中具体要求方面的测试;而集成测试主要验证各个接口、接口之间的数据传递关系,及模块组合后能否达到预期的效果。10.依据GB/T 155322008 计算机软件测试规范软件测试应由相对独立的人员进行。以下选项中不属于测试分析员具体职责的是_。(分数:2.00)A.确定测试计划、测试内容B.获取适当的资源、技术协调C.确定
23、测试方法、测试数据生成方法D.测试(软、硬)环境、测试工具、评估测试工作的有效性 解析:解析 目前业界通用的做法是单元测试由开发团队执行,而集成和系统测试用例则由专门的测试团队进行。其团队成员包含测试负责人、测试分析员、测试设计院、测试程序员、测试员、测试系统管理员、配置管理员。其中测试分析员的具体职责为:确定测试计划、测试内容、测试方法、测试数据生成方法、测试(软、硬)环境、测试工具,评估测试工作的有效性。11.容量测试(Volume Testing)的主要目标是_。(分数:2.00)A.测试各种资源在超负荷的情况下的运行情况B.检测系统可以处理目标内确定的数据容量 C.度量系统的性能和预先
24、定义的目标有多大差距D.验证系统从软件或者硬件失效中恢复的能力解析:解析 容量测试是在系统正常运行的范围内测试并确定系统能够处理的数据容量。容量测试是面向数据的,主要目的就是检测系统可以处理目标内确定的数据容量。12.基于各种方式获取的需求和建立的业务对象模型和分析模型,编写系统和软件需求规格说明,提交管理机构进行需求评审,这是软件生存周期中_阶段的主要任务。(分数:2.00)A.软件设计B.带 0 定计划C.系统与软件需求定义 D.集成和系统测试解析:解析 软件生存周期的各个阶段都有各自的任务,基于各种方式获取的需求和建立的业务对象模型和分析模型,编写系统和软件需求规格说明,提交管理机构进行
25、需求评审,是系统与软件需求定义阶段的主要任务。13.测试项目的输出标准包括_。(分数:2.00)A.测试执行标准、测试分析B.缺陷描述和处理标准C.文档标准和模板、质量评估标准等D.以上全是 解析:解析 测试项目的输出标准有:测试执行标准;缺陷描述和处理标准;文档标准和模板;测试分析、质量评估标准。14.下列语句通常不是作为定义结点的是_。(分数:2.00)A.输入语句B.过程调用语句C.赋值语句D.输出语句 解析:解析 结点 n 是变量 v 的定义结点,当且仅当变量 v 的值在结点 n 对应的语句中定义时,记做DEF(v,n)。通常对应定义结点的语句有:输入语句、赋值语句、循环控制语句和过程
26、调用语句等。输出语句应对应使用结点。15.“成熟度”这一概念来源于美国 Carnegie Mellon 大学软件工程研究所的软件能力成熟度模型(SW-CMM),在测试支持度模型(Testability Support Model)中,分为三个级别。下列哪项不属于此级别分类_。(分数:2.00)A.弱(weak)B.基本(basic)C.正常(normal) D.强(stron解析:解析 TSM 分为 3 个级别。第一级:弱(weak)。可测性支持,只提到很少的测试问题。第二级:基本(basic)。可测性支持,提到了基本的测试问题。第三级:强(strong)。可测性支持,提到了所有的测试问题。1
27、6.单元测试首先对通过模块接口的数据流进行测试。接口测试主要从如下几个方面考虑_。(1)模块的形参和其驱动模块送来的参数的个数、类型、次序是否一致(2)模块传送给被调用模块的参数与其桩模块的参数的个数、类型和次序是否一致(3)模块传送给库函数的变量个数、类型次序是否正确(4)全局变量的定义和用法在各个模块中是否一致(5)所使用的外部文件的属性是否正确,打开文件的语句是否正确,缓冲区大小是否与记录长度相匹配,文件结束判断处理是否一致(分数:2.00)A.(1)(3)(4)(5)B.(1)(2)(4)(5)C.(2)(3)(4)(5)D.(1)(2)(3)(4)(5) 解析:解析 单元测试首先对通
28、过模块接口的数据流进行测试。如果发现数据不能按照预定要求进出模块,所有的其他测试都是不切实际的。接口测试主要从题目中(1)到(5)几个方面考虑的。所以答案应该为D。17.对计算机的系统有用的系统测试类型有_。(1)恢复测试 (2)安全测试(3)应力测试 (4)性能测试(分数:2.00)A.(1)(2)B.(2)(3)C.(2)(3)(4)D.(1)(2)(3)(4) 解析:解析 恢复测试是用强制力来测试软件是否能正常恢复。安全测试是用来验证集成在系统内的保护机制能否实际保护系统不受非法人侵。应力测试和性能测试都是对计算机系统有用的系统测试方法。18.可能给项目成本、进度和质量带来坏的影响的事情
29、被称作_。(分数:2.00)A.灾难B.意外C.风险 D.缺陷解析:解析 风险是指发生了可能给项目成本、进度和质量带来坏的影响的事情。风险有可能是可以避免的,可以采取措施避免其发生,也有可能是不可避免的,只能降低风险带来的损失。19.软件可靠性测试过程的正确顺序为_。(分数:2.00)A.定义软件运行剖面、设计测试用例、确定可靠性目标、实施可靠性测试、分析测试结果B.确定可靠性目标、定义软件运行剖面、设计测试用例、实施可靠性测试、分析测试结果 C.设计测试用例、定义软件运行剖面、确定可靠性目标、实施可靠性测试、分析测试结果D.确定可靠性目标、设计测试用例、定义软件运行剖面、实施可靠性测试、分析
30、测试结果解析:解析 软件可靠性测试过程包括五个步骤:确定可靠性目标,定义软件运行剖面,设计测试用例,实施可靠性测试,分析测试结果。20.阅读以下程序,采用逻辑覆盖进行测试,下列测试用例(a,b,c)的输入值,可以达到条件覆盖的是_。Int func(int a,b,c)Int k=1:If(a0)1 1(b0)l I(a+c0)k=k+a:Else k=k+b:If(c0)k=k+c;Return k(分数:2.00)A.(1,1,1),(-1,1,1)B.(1,1,1),(-1,-1,-1) C.(1,1,-1),(1,1,1)D.(1,1,-1),(-1,1,1)解析:解析 根据逻辑覆盖的
31、做法,一个或者多个条件组成一个判定,一个程序中可以有多个判定。首要是建立一个二维的真值表,各列为判定和条件,各行为每组值的 T 或者 F。21.下列关于极限编程的说法中,不正确的是_。(分数:2.00)A.极限编程的主要优点是可以随时应对新增或改变的需求B.极限编程的主要缺点是编码人员的自由度过大C.极限编程的单元测试由专门的测试人员完成,编码人员不参与其中 D.验收测试主要由用户完成解析:解析 首先极限编程的单元测试由编码人员完成;其次,极限编程要求在编码之前先进行测试。这样一是为了提高编码人员测试自己编写代码的效率;二是使编码人员更好地把握软件需求;三是可为编码人员设立明确的编码目标。22
32、.针对逻辑覆盖,下列叙述不正确的是_。(分数:2.00)A.达到 100%CC 要求就一定能够满足 100%DC 的要求 B.达到 100%CDC 要求就一定能够满足 100%DC 的要求C.达到 100%MCDC 要求就一定能够满足 100%DC 的要求D.达到 100%路径覆盖要求就一定能够满足 100%DC 的要求解析:解析 此题考查的是白盒测试用例设计方法的基本概念。达到 100%CC 要求不一定能够满足 100%DC 的要求;达到 100%CDC 要求就一定能够满足 100%DC 的要求;达到 100%MCDC 要求就一定能够满足 100%DC 的要求;达到 100%路径覆盖要求就一
33、定能够满足 100%DC 的要求。23.Web 应用软件的三层体系结构是:表示层、业务层和数据层。三者的位置依次是_。(分数:2.00)A.客户端 服务器端 客户端B.客户端 服务器端 服务器端 C.服务器端 客户端 服务器端D.客户端 客户端 服务器端解析:解析 由于 web 应用软件一般采用多层结构,所以在测试时也采用分层的策略,表示层、业务层和数据层。其中,表示层的分布在客户端,主要负责客户端界面与服务器端的交互;业务层主要为应用软件的业务逻辑,存放在服务器端;数据层主要为服务器端软件数据的处理和储存能力,包括数据的完整性和数据库操作等。24.关于对软件测试定义的理解,下边哪句话是正确的
34、_。(分数:2.00)A.应用系统开发完毕,再对它进行测试B.软件开发中产生的错误都源于编码阶段的错误代码C.测试是我们考查并理解与发布的软件系统有关的利益和风险状况的过程 D.完备的测试能够详尽地表明软件中不存在的错误解析:解析 A)有一种传统的观念认为:“应用系统开发完毕,再对它进行测试”。用这种思想来指导测试工作是相当危险的。对于软件质量的判断绝不只限于程序本身,它同编码以前所完成的需求分析以及软件设计工作密切相关。B)表现在程序中的错误,并不一定是编码所引起的,有可能是详细设计、概要设计阶段,甚至是需求分析阶段引起的问题。C)我们可以使用风险来对测试进行定义:测试时我们考查并理解与发布
35、的软件系统有关的利益和风险状况的过程。D)测试的目的是寻找错误,并且是花最少代价、在最短时间内尽最大可能找出软件中潜在的各种错误和缺陷。测试不能表明软件中不存在的错误,它只能说明软件中存在的错误。25.关于 C/S 结构和 B/S 结构的比较,下列说法中不正确的是_。(分数:2.00)A.两种结构所描述的都是远程应用访问的模式,从客户端程序向服务器发起请求的方式来看,并没有很大的不同B.从应用模式的发展来看,B/S 结构的应用范围越来越广,但 C/S 仍旧拥有 B/S 所无法替代的优势C.C/s 对于传输协议没有特定的要求,相对 HTTP 协议,底层协议的通信效率更高D.B/S 的缺点在于业务
36、扩展方式比较麻烦,不能像 C/S 那样增加网页即可增加服务 解析:解析 D 选项犯了一个很严重的错误,把 C/S 和 B/S 的概念混淆了。B/S 是浏览器/服务器模式,可以很简单地通过增加网页就可以增加服务,而 C/S 是客户端服务器模式,如要增加服务就必须要升级客户端,所以比较麻烦,代价也较大。二、论述题(总题数:3,分数:50.00)以下是某 C 语言程序,此程序根据输入的学生成绩得出成绩的等级,请仔细阅读程序并完成要求。int scorelevel(int score)int level:if(score100|score0)level=-1;else if(score=90)leve
37、l=1;else if(score=80)level=2;else if(score70)level=3;else if(score=60)level=4;else level=5:return level:(分数:21.00)(1).画出上面程序的控制流图。(分数:7.00)_正确答案:(程序的控制流图如下图所示。*)解析:(2).给出满足基本路径覆盖的路径集合。(分数:7.00)_正确答案:(由控制流图的圈复杂度 V(G)=7(图中的区域数,或者 V(G)=E=N+2),所以基本路径集合应包含7 条独立的路径。分别为:1-2-7-1.1-2-7-121-2-3-8-121-2-3-4-9-
38、121-2-3-4-5-10-121-2-3-4-5-6-11-12)解析:(3).设计覆盖基本路径的测试用例集合。(分数:7.00)_正确答案:(测试用例的设计如下:Score=188,95,85,75,63,26;)解析:以下是某 C 语言程序,用来求一个数的绝对值,请仔细阅读程序并完成要求。#include“stdi.h“main()float x,y;scanf(“%f“,x);if(x0)y=x;elsey=-x;printf(“%f“,y);getch();(分数:14.00)(1).画出此程序主函数的控制流程图。(分数:7.00)_正确答案:(程序的控制流程图如下:*)解析:(2
39、).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句或分支覆盖率无法达到 100%,需说明为什么。(分数:7.00)_正确答案:(测试用例包含几种情况:正数 3;负数-124;错误输入其他字符 xu。)解析:以下是 QESuite Web Version 1.0 用户手册的内容,请按要求回答问题。(分数:15.00)(1).下图是问题报告的管理过程。请给出问题报告的各个状态,并进行适当的描述。(分数:7.50)_正确答案:(QESuite Web Version 1.0 中的软件问题生命周期定义:新建测试中新报告的软件问题;打开软件问题已被确认
40、并分配给相关开发工程师处理;关闭确认为无效的软件问题;待验工程师已完成修正,等待测试人员验证;解决软件问题已被修复。)解析:(2).给出问题报告中回归测试的操作步骤和退出回归测试的操作步骤。(分数:7.50)_正确答案:(测试的步骤如下:回归测试在回归测试阶段,需要重新验证一些已经被关闭或者解决的问题报告。此时,管理员可以通过执行(回归测试)操作,将一个或者多个问题报告从“关闭”或者“解决”状态变为“待验”状态,让质保人员重新验证这些问题报告。步骤:在问题报告列表中选择需要回归测试的问题报告并打开。注意:回归测试操作只处理那些状态为“关闭”或者“解决”的问题报告。如果你选中的多个问题报告中包含有状态不是“关闭”或者“解决”的问题报告,这些不满足条件的问题报告将被回归测试操作忽略。在查看问题报告页面中选择回归测试按钮。退出回归测试对于那些被执行了(回归测试)操作的问题报告,在测试人员验证这些问题报告之前,可以通过执行退出回归测试)操作来恢复它们以前的状态,从而退出回归测试。(退出回归测试操作可以由管理员执行,将一个或者多个问题报告从“待验”状态恢复回“关闭”或者“解决”状态。步骤:在问题报告列表中打开已进人回归测试的问题报告。在查看问题报告页面中单击“退出回归测试”按钮。此时的文档状态恢复为进入回归测试之前的状态。)解析: