计算机等级考试三级软件测试技术第一套(真题).docx

上传人:罗晋 文档编号:8858366 上传时间:2021-01-20 格式:DOCX 页数:18 大小:193.29KB
返回 下载 相关 举报
计算机等级考试三级软件测试技术第一套(真题).docx_第1页
第1页 / 共18页
计算机等级考试三级软件测试技术第一套(真题).docx_第2页
第2页 / 共18页
计算机等级考试三级软件测试技术第一套(真题).docx_第3页
第3页 / 共18页
计算机等级考试三级软件测试技术第一套(真题).docx_第4页
第4页 / 共18页
计算机等级考试三级软件测试技术第一套(真题).docx_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《计算机等级考试三级软件测试技术第一套(真题).docx》由会员分享,可在线阅读,更多相关《计算机等级考试三级软件测试技术第一套(真题).docx(18页珍藏版)》请在三一文库上搜索。

1、一、选择题(每小题2分,共50分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。1 ANSI/IEEE STD729-1983给出软件质量的定义:软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。以下叙述中不属于这些质量特征和特性的是A) 产品功能 B) 效率 C) 可使用性 D) 项目成本和进度正确答案D2 软件产品需求规格说明书是软件缺陷存在最多的地方,其原因是A) 软件开发人员与用户沟通比较困难,对要开发的产品需求理解不一致B) 系统设计不能全面考虑产品在功能、性能、安全性、可维护性等方面的平衡C) 采用不熟悉的新技术开发系统或不科学的算法解决问题D) 系统内各

2、子系统或模块的参数过于复杂,导致信息传递失误正确答案B 3 条件覆盖的基本思想是设计若干测试用例,执行被测程序,使得每个判断的每个条件的可能取值至少满足一次。那么对于如下的C语言程序段if(a0&b0)c=c/a;iI(a1|c1)c=c+1;如果采用适用于条件覆盖的两个测试用例,其输入值分别为a=2,b=-1,c=-2和a=-1,b=2,c=3,则以下叙述中正确的是A) 执行测试后,4个条件a0,b0,a1,c1的所有取值都至少执行一次B) 执行测试后,除b0取真和c1取假外其他条件取值都至少执行一次C) 执行测试后,除b0取假和c1取真外其他条件取值都至少执行一次D) 执行测试后,除b0取

3、真和c1取真外其他条件取值都至少执行一次正确答案B解析 根据与“&”、或“|”的“短路”运行特性,结合两组输入值分析可知,第一个判断条件b0取真,第二个判断条件c1取假没有被执行,其他条件的取值都被至少执行了一次。4 对于所给的C语言程序段if(a0&b0)c=c/a;if(a1|c1)c=c+1;执行条件组合覆盖,为使得每一条件取值组合至少执行一次,需要的测试用例数至少是A) 2 B) 3 C) 4 D) 5正确答案C解析 两个分支四条路径,至少需要4个测试用例。5 单元接口测试是单元测试的一种,以下不属于单元接口的是A) 参数表 B) 输入/输出文件 C) 出错信息处理 D) 全局量正确答

4、案D解析 单元测试从5个方面考虑,分别是:模块接口、出错处理、独立路径、边界条件和局部数据结构。答案中,参数表和输入/输出文件属于模块接口,所以答案选D。 6下图(a)是一个程序的模块结构。模块A是主模块。下图(b)是集成测试顺序的示意图。从此图可知,这个集成策略是:A) 自顶向下集成 B) 自底向上集成 C) 大突击集成 D) 三明治式集成正确答案B 7集成测试分析的作用是指导集成测试用例的设计,安排测试和集成顺序。集成模块划分是集成测试分析的一个重要环节。以下叙述中不属于合理的集成模块划分的是A) 被集成的几个模块间的联系必须很密切B) 可以很容易地隔离集成模块的外围模块C) 集成模块内部

5、各个模块必须共享某些数据区或程序区D) 能够简便地模拟外围模块向集成模块发送消息正确答案C试题解析:解析 合理的集成测试模块划分应满足以下几点:被集成的几个模块之间的关系必须密切;可以方便地隔离集成模块的外围模块;能够简便地模拟外围模块向集成模块发送消息;外围模块向被测试的集成模块发送的消息能够模拟实际环境中的大多数情况。 8破坏性测试的任务是评测软件在承受超出其正常负荷N倍的情况下,错误出现时的状态和错误发生后的恢复能力。它的实施主要在A) 系统层 B) 子系统层 C) 协议/指标层 D) 用户层正确答案A9 程序代码检查过程中为检查说明、使用错误,通常需要借助一些引用表。以下不适用于做这种

6、检查的引用表是A) 循环层次表 B) 事件/响应表C) 变量交叉引用表 D) 标号交叉引用表正确答案B解析 引用表是为了支持对源代码进行静态检查,可分为:标号交叉引用表;变量交叉引用表;子程序、宏和函数表;等价表;常数表。 在单元测试过程中,“差1错”属于比较错误,它是指A) 不正确地多循环或少循环一次 B) 不同数据类型的比较C) 不正确的逻辑运算符或优先次序 D) 当遇到死循环时无法跳出循环正确答案A解析 “差1错”是指:不正确地多循环或少循环一次;迭代发散时不能退出;错误地修改了循环变量。 以下关于软件性能测试的说法中,正确的是A) 检测每个函数的McCabe圈复杂度是软件性能测试关注的

7、主要内容B) 缩短平均故障修复时间是软件性能测试的主要目的之一C) 提高并发进程数是软件性能测试的主要目的之一D) 吞吐量是软件性能测试中一种常用的性能指标正确答案D解析 软件性能的指标主要有:响应时间。系统响应时间和应用延迟时间。吞吐量。并发用户数。资源利用率。 以下哪种软件测试不属于软件性能测试的范畴A) 数据流测试 B) 压力测试 C) 负载测试 D) 并发测试正确答案A解析 软件性能的测试主要分为:性能测试。并发测试。压力测试。可靠性测试。负载测试。配置测试。失效恢复测试。 以下关于软件可靠性测试的说法中,正确的是A) 软件可靠性测试总是能比白盒测试发现更多的错误B) 软件可靠性测试总

8、是能比黑盒测试发现更多的错误C) 软件可靠性测试不关注与软件性能有关的软件故障D) 软件可靠性测试度量出来的软件可靠性特定于所定义的软件运行剖面正确答案D 以下关于软件可靠性与硬件可靠性的主要区别的说法中,错误的是A) 软件的失效多是逻辑错误引起的;硬件的失效很多不是逻辑错误引起的B) 硬件在使用过程中会发生物理退化;软件在使用过程中不会发生物理退化C) 硬件的使用者少,不容易引起失效;软件的使用者多,更容易引起失效D) 软件的每个拷贝都是完全一样的;按照设计生产出来的同规格硬件总有微小差别正确答案C解析 软件可靠性与硬件可靠性的区别:唯一性。软件设计出来以后,每份拷贝都是完全一样的,而硬件在

9、设计出来以后-每个按照设计生产的硬件都不可能完全相同。物理退化。硬件可靠性研究的一个重要原因就是物理退化。逻辑复杂性。软件是纯逻辑产品,内部逻辑复杂度高,而硬件的内部逻辑相对简单。版本更新。硬件的更新通常较慢,而软件受到需求变更等因素的影响,版本更新比较频繁。 以下关于面向对象软件测试的说法中,正确的是A) 对于一个类进行单元测试时,一个测试用例只能调用在该类中定义的方法,不能调用在该类的父类中定义的方法B) 对于一个类进行单元测试时,一个测试用例只能调用在该类的父类中定义的方法,不能调用在该类中定义的方法C) 对于一个类进行单元测试时,一个测试用例既可以调用在该类的父类中定义的方法,也可以调

10、用在该类中定义的方法D) 对于一个类进行单元测试时,由该类及其父类中定义的方法组成的任何一个序列都是一个合理的测试用例正确答案C解析 由于集成和多态的使用,对子类的测试通常不能限定在子类中定义的成员变量和成员方法上,还需要考虑父类对子类的影响。以下关于面向对象软件测试的说法中,正确的是A) 不需要对抽象类进行单元测试B) 等价类划分测试是一种类层次的测试技术C) 不变式边界测试是一种类层次的测试技术D) 测试动态绑定是类树测试的唯一目标正确答案C 以下关于面向对象软件集成测试的说法中,错误的是A) 协作集成是指将可以协作完成特定系统功能的类集成在一起进行集成测试B) 针对一个类的多个成员方法闻

11、协作的测试不属于面向对象软件集成测试关注的范畴C) 针对一个类的多个实例间协作的测试不属于面向对象软件集成测试关注的范畴D) 针对一个类树上多个类的行为的测试属于面向对象软件集成测试关注的范畴正确答案C解析 协作集成是在集成测试时针对系统完成的功能,它将可以相互协作完成特定系统功能的类集成在一起进行测试。针对一个类多个实例间的测试属于面向对象集成测试的范畴。 以下关于Web应用软件测试的说法中,正确的是A) 内容测试是Web应用软件性能测试的一项重要内容B) 表单测试是Web应用软件易用性测试的一项重要内容C) 并发测试是Web应用软件安全性测试的一项重要内容D) Cookie测试是Web应用

12、软件功能测试的一项重要内容正确答案D 以下哪一项不属于软件易用性测试关注的内容A) 相似功能的使用风格是否与同类软件一致B) 软件内相似功能的使用风格是否一致C) 软件是否能帮助用户减少输入中的重复劳动D) 软件界面的色彩是否悦目正确答案D 以下哪一项不属于兼容性测试关注的范畴A) 操作系统是否能运行于不同的硬件平台B) 杀毒软件在清除病毒时是否会影响办公软件的正常工作C) Web应用软件是否支持不同的关系型数据库D) 软件用户手册中的功能说明与实际功能是否一致正确答案D解析 兼容性测试包括:与操作系统的兼容性;与数据库的兼容性;与浏览器的兼容性;与中间件的兼容性;与其他软件的兼容性;与平台软

13、件的兼容性。 下列有关测试活动的描述中,错误的是A) 测试策划的主要依据包括测试合同中测试范围和进度安排要求等B) 测试执行中不能随意修订测试计划C) 测试用例设计是测试执行的主要内容D) 测试总结的目的是对测试结果进行分析,以确定软件产品质量的当前状态正确答案C解析 测试活动包括四项基本内容:测试策划。测试设计与实现,在该活动中制定测试的技术方案、选择测试工具,并根据测试技术方案设计测试用例。测试执行。测试总结。 以下有关回归测试的说法中,正确的是A) 回归测试是一个测试阶段B) 回归测试的目标是确认被测软件经修改和扩充后正确与否C) 回归测试不能用于单元和集成测试阶段D) 回归测试是指在软

14、件新版本中验证已修复的软件问题正确答案B解析 回归测试有两种不同的使用方式,都是建立在复用原有测试的思想之上的。其方式描述如下:一经发现并改正了程序中隐藏的缺陷,然后再重新执行以前发现这个缺陷的测试,看这个缺陷是否重现。回归测试的目的是为了确认对程序的修改达到了预期的目标。当对发现的缺陷进行修改之后,执行一系列基准测试,以确认程序的修改没有对程序的其他部分产生干扰。 下列有关测试过程质量控制的描述中,正确的是A) 测试设计与实现应完整覆盖测试需求B) 测试过程中不能对测试需求进行重新获取C) 测试过程中,若相同时间间隔内发现的缺陷数量呈收敛趋势,则可结束测试D) 软件测试应解决软件系统中所有缺

15、陷正确答案C解析 测试过程的质量控制中应包括以下4方面的内容:把握需求。在软件系统开发过程中,需求的获取和完善贯穿于每一个阶段,依据“尽早测试”和“全面测试”的原则。变更控制。体现“全过程测试”的理念。度量与分析。若相同时间间隔内发现的缺陷数量呈收敛状态,则说明测试是充分的。测试过程可持续改进。 下列关于开始软件测试工作应具备的条件中,错误的是A) 具有测试合同(或项目计划)B) 软件测试文档齐全、符合规范C) 所提交的被测软件受控D) 软件源代码正确通过编译或汇编正确答案B解析 软件测试工作一般应具备的条件为:具有测试合同(或项目计划);具有软件测试所需的各种文档;所提交的被测软件受控;软件

16、源代码正确通过编译或汇编。 软件测试文档可进行合理的取舍与合并,对于微、小规模软件,下列说法中错误的是A) 测试计划和测试说明可以合并B) 测试报告中可包括测试记录和测试问题报告C) 测试报告、测试记录、测试问题报告和测试总结报告可以合并D) 测试说明和测试报告可以合并正确答案D解析 对于微、小规模的软件,测试计划和测试说明可以合并,测试报告、测试记录、测试问题报告、测试总结报告也可以合并。二、论述题(共3题,合计50分)论述题1:(10分)在企业信息管理系统中,人员信息查询是最常见的。使用以下3个独立的查询条件:1)员工号(ID)2)员工姓名(Name)3)员工邮件地址(eMail)每个查询

17、条件可有可无,但不能都没有;且条件的取值可以是能查到的,也可以是查不到的。当出现多个查询条件时,按IDNameeMail的顺序查询。如果某一条件未出现,则检查下一条件;如果某一条件出现,则检查满足该条件取值的信息是否存在:若不存在,立刻中止查询,并输出失败信息;若存在,继续下一条件查询,最后输出查询结果。要求:画出实现查询的程序流程图。 正确答案 流程图给出一组测试路径,能覆盖程序流程图的所有分支。(10分)正确答案 覆盖程序流程图的所有分支的测试路径如下表所示 论述二: QESuite Web Version 1.0中,已知某OA系统测试项目的部分信息如下:测试版本:总计4个测试版本,按日期

18、排序分别为OA1.0_111009,OA1.0_111025,OA1.0_111103,OA1.0_111129。功能分类视图中部分待测区域及人员分配定义如下表所示:下表是功能区域“发文管理/发文”下某一个软件问题的操作历史信息,请依据QESuite Web Version 1.0的软件问题生命周期定义和题中提供的相关人员分配和测试版本信息,填写表中5项空缺的操作历史信息。(10分)正确答案论述题2:下图是QEsuite Web Version 1.0的问题报告工作状态转换流程。操作3中在打开/再现下,应由开发人员执行修复操作,操作后转为待验状态,该空填写:修复/修复。操作4中在待验状态下,应

19、由测试人员验证。根据操作5所示的执行操作可知,操作3中未能修复,所以操作4空填写:验证/同意。操作7中在解决状态下,应由测试人员重新打开,该空填写:回归测试。操作9中经验证同意不修复,操作后的问题状态应为:关闭。由于总计4个测试版本,并按日期排序,所以最后的测试版本应为:OA1.0_111129。 论述题3:/*longIntAdd*/#includestdio.h#includestring.h#define LENGTH 81void addLInt(char s1,char s2);void reverse(char s);int main()char intstr1LENGTH,int

20、str2LENGTH;printf(请输入超长整数的被加数和加数:n);scanf(%s%s,intstr1,intstr2);addLInt(intstr1,intstr2);printf(超长整数和为:%s,intstr1);return 0;void addLInt(char s1,char s2)int i=0,tmp,c=0;char sLENGTH;if(strlen(s1)strlen(s2)strcpy(s,s1);strcpy(s1,s2);strcpy(s2,s);reverse(s1);reverse(s2);while(s2i!=;0)tmp=s1i-0+s2i-0+c

21、;81i=tmp%10+0;c=tmp/10;i+;while(si1!=0&c)tmp=s1i-0+c;s1i=tmp%10+0;c=tmp/10;i+;If(c)s1i+=c+0;s1i=0;reverse(s1);void reverse(char s)int i,j,c;for(i=0,j=strlen(s)-1;ij;i+,j-)c=si;si=sj;sj=c;29、画出程序中函数addLInt的控制流程图;(10分)正确答案 函数addLInt的控制流程图。 设计一组测试用例,使该程序addLInt函数的语句覆盖率和分支覆盖率均能达到100%。如果认为该函数的语句覆盖率或分支覆盖率

22、无法达到100%,需说明为什么。正确答案 测试用例a.s1:“1111111111111111” s2:“2222222222222222b.s1:“123456789” s2:“989”c.s1:“989” s2:“123456789”d.s1:“999999999999” s2:“111111”本题分值:10分解析 语句覆盖是指设计若干测试用例,运行被测程序,使得每个可执行语句至少执行一次。语句覆盖率=被评价到的语句数量/可执行的语句数量100%。设计若干测试用例,运行被测程序使得每个判定的取真分支和取假分支至少评价一次。判定覆盖率=被评价到的判定分支个数/判定分支的总数100%。当输入a、b、c、d中的测试用例后,语句覆盖率和分支覆盖率均为100%。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1