欢迎来到麦多课文档分享! | 帮助中心 海量文档,免费浏览,给你所需,享你所想!
麦多课文档分享
全部分类
  • 标准规范>
  • 教学课件>
  • 考试资料>
  • 办公文档>
  • 学术论文>
  • 行业资料>
  • 易语言源码>
  • ImageVerifierCode 换一换
    首页 麦多课文档分享 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    【计算机类职业资格】全国计算机等级考试四级软件测试工程师真题2012年3月及答案解析.doc

    • 资源ID:1329895       资源大小:70KB        全文页数:9页
    • 资源格式: DOC        下载积分:5000积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    二维码
    微信扫一扫登录
    下载资源需要5000积分(如需开发票,请勿充值!)
    邮箱/手机:
    温馨提示:
    如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如需开发票,请勿充值!如填写123,账号就是123,密码也是123。
    支付方式: 支付宝扫码支付    微信扫码支付   
    验证码:   换一换

    加入VIP,交流精品资源
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【计算机类职业资格】全国计算机等级考试四级软件测试工程师真题2012年3月及答案解析.doc

    1、全国计算机等级考试四级软件测试工程师真题 2012年 3月及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2分,共 50分)下列各题 A(总题数:25,分数:50.00)1.以下叙述中不属于软件产品质量要求的是(分数:2.00)A.应满足客户的功能需求和性能要求B.应具备一定的可扩展性和灵活性,以适应需求的变化C.应能够有效地处理例外或异常情况D.应保证数据库的完整性和安全性2.以下有关软件缺陷产生的原因中属于软件技术问题的是(分数:2.00)A.系统需求分析时对客户的需求理解不清楚B.文档错误、内容不正确或拼写错误C.系统结构不合理、算法不正确D.不同阶段的开发人

    2、员对需求的理解不一致3.在软件测试的生命周期模型中建立测试脚本任务的阶段应是(分数:2.00)A.制定测试计划B.测试设计C.实施测试D.评估测试4.软件设计一般包括外部设计和内部设计。外部设计通常是指(分数:2.00)A.用户界面设计B.结构设计C.数据设计D.逻辑设计5.在做静态错误分析时进行浮点数计算误差的检查应属于(分数:2.00)A.类型和单位分析B.表达式分析C.引用分析D.接口分析6.如果一个小程序中有一个由 8个两分支判断组成的连锁分支结构,如图 (分数:2.00)A.28B.16C.9D.87.如果执行下面的 C程序,并做了成功的存储分配: char * pBuf=NULL;

    3、 pBuf=(char*)malloc(100); if(pBuf=NULL) printf(“Not Enough Memory/n“); return 1; 则此段程序测试的指令块(即顺序执行的一段指令)覆盖率是(分数:2.00)A.100%B.60%C.50%D.40%8.在执行单元测试时最有用的测试方法是(分数:2.00)A.基本路径覆盖B.事件序列走查C.事件响应驱动D.判定表9.MM路径集成是一种基于消息的路径集成方法,其中 MM路径是指(分数:2.00)A.对应调用图的每一个边建立并执行的一个集成测试会话序列B.针对模块的每一个程序剖面执行的语句序列C.按照广度优先策略逐层集成与

    4、测试的序列D.穿插出现在各模块中执行的方法和消息的序列10.以下不属于黑盒测试用例设计的方法是(分数:2.00)A.基于用例和场景导出测试用例B.基于有限状态机导出测试用例C.基于状态的事件表导出测试用例D.基于数据流和控制流导出测试用例11.以下哪一项不是软件性能测试关注的主要内容(分数:2.00)A.检测软件的最大负载B.检测软件的响应时间C.检测软件的并发进程数D.揭示软件在压力下出现的错误12.以下关于软件性能测试的说法中,正确的是(分数:2.00)A.软件性能测试的主要目的是检验软件是否能充分发挥硬件的潜能B.软件性能测试通常采用数据流测试技术生成测试用例C.软件性能测试实际上是一种

    5、软件可靠性测试D.软件性能测试的实施通常需要依赖性能测试辅助软件13.以下关于软件测试的说法中,正确的是(分数:2.00)A.通过软件可靠性测试是软件交付使用的必要条件B.软件可靠性测试的主要目的是度量软件在实际使用中的可靠性C.软件可靠性测试通常针对软件中的每个单元进行D.软件可靠性测试是发现软件安全性问题的主要手段14.以下关于软件可靠性测试的说法中,错误的是(分数:2.00)A.软件可靠性测试能有效地减少软件在恶意使用下出现崩溃的次数B.定义软件运行剖面是软件可靠性测试的重要步骤C.软件可靠性测试通常需要基于软件可靠性预测模型D.软件可靠性测试不能沿用硬件可靠性测试的方法15.以下关于面

    6、向对象程序测试的说法中,正确的是(分数:2.00)A.面向对象程序与传统程序的黑盒测试方法完全相同B.面向对象程序与传统程序的白盒测试方法有明显区别C.单个类树的测试不属于面向对象程序单元测试关注的范畴D.对一个类的每个成员方法都进行充分的测试就完成了对该类充分的测试16.以下关于面向对象程序测试的说法中,错误的是(分数:2.00)A.方法名的重载是面向对象软件测试区别于传统程序测试的一个根本因素B.展平测试是测试一棵继承树叶结点类的一种策略C.基于判定表的测试可以用于面向对象程序的单元测试D.等价类划分测试能用于方法层次的测试17.以下关于面向对象软件测试的说法中,错误的是(分数:2.00)

    7、A.测试动态绑定是类树测试的一个重要目标B.面向对象软件协作集成测试是指对一个类的多个实例间协作进行的测试C.面向对象软件的自底向上集成测试需要为集成测试开发相应代码D.面向对象软件的单元测试需要考虑对一个类中单个方法的测试18.以下关于 Web应用软件测试的说法中,正确的是(分数:2.00)A.Web应用软件测试通常不用考虑安全性测试B.与传统软件相比,Web 应用软件测试更简单C.表单测试是 Web应用软件功能测试的一项重要内容D.测试是否存在无效链接是 Web应用软件安全性测试一项重要内容19.以下哪一项是软件易用性测试关注的内容(分数:2.00)A.杀毒软件在清除病毒时是否会破坏办公软

    8、件的文档B.软件提供的功能是否丰富C.软件是否支持用户根据自己的需要进行定制D.软件是否能在多种操作系统下运行20.以下关于软件兼容性测试的说法中,正确的是(分数:2.00)A.软件兼容性测试不关注软件与硬件间的兼容性B.等价类划分测试是软件兼容性测试的主要手段C.极限测试是一种软件兼容性测试D.排版软件是否可以打开该软件以前版本保存的文件属于软件兼容性测试关注的范畴21.以下有关测试用例设计与开发的说法中,错误的是(分数:2.00)A.白盒测试的测试用例设计不必考虑软件功能B.软件测试用例设计要关注测试用例设计的测试需求覆盖率C.自动化测试的测试脚本开发属于测试用例设计工作的一部分D.测试用

    9、例设计的主要依据是测试计划中的测试需求定义22.以下有关测试环境的说法中,错误的是(分数:2.00)A.在实际的软件测试中,软件测试环境可分为主测试环境和辅测试环境B.软件测试只能在软件真实运行环境下开展C.在测试环境准备中,无法获取真实数据时,可使用仿真数据D.测试工具的准备是属于测试环境准备的一项工作23.以下有关测试自动化的说法中,错误的是(分数:2.00)A.在自动化测试基本结构中,数据库服务器用于存储测试用例和测试结果B.自动化测试过程中,除选择测试用例和分析失败原因外,其他过程都是自动化开展的C.结构化脚本的优点是健壮性更好,可以对一些容易导致测试失败的特殊情况进行处理D.共享脚本

    10、的维护开销高于线性脚本24.下列有关软件集成测试的说法中,错误的是 (分数:2.00)A.软件集成测试一般由软件供方组织并实施,测试人员与开发人员应相对独立B.软件集成测试可委托第三方进行C.软件集成测试的技术依据是软件需求文档D.进入集成测试要求待集成的软件单元已通过单元测试25.下列有关软件回归测试的说法中,错误的是(分数:2.00)A.回归测试的对象包括:在软件单元测试、集成测试、软件配置项测试和系统测试中未通过的软件B.回归测试首先应对原来未变更的软件单元进行测试,然后再对变更的软件单元进行测试C.回归测试的内容包括原软件测试做过的测试内容、修改原软件测试做过的测试内容以及在此基础上新

    11、增的测试内容D.回归测试可根据被测软件的具体情况对软件的测试内容进行剪裁二、论述题(共 50分)(总题数:2,分数:50.00)一个简化的高铁售票系统的规格说明如下: 乘客未使用系统前系统处于“等待”状态,屏幕显示沿线各车站的站名。 乘客选择了到达站并按下购票键之后,系统进入“待付款”状态,屏幕显示票价,等待乘客付款。 如果乘客在限时之内付款,系统进入“出票”状态,打印并吐出相应车票,同时找回余额,然后系统重置回到“等待”状态。 如果乘客在限时之内未付款之前按下取消键取消购票,系统进入“等待”状态。 如果乘客在限时之内没有付款,系统进入“超时”状态,显示“超时”“取消购票”等信息,然后系统重置

    12、回到“等待”状态。 如果乘客在拿到车票后要求退票,在“等待”状态下按下退票键,系统进入“查证”状态。 如果查证成功,系统进入“退票”状态。回收车票,退回票款,然后系统重置回到“等待”状态;如果查证不成功,系统进入“警告”状态,屏幕显示“车票无效”信息,然后系统重置回到“等待”状态。(分数:30.00)(1).请根据上述规格说明,画出相应的状态转换图。(分数:10.00)_(2).计算该状态转换图的圈复杂度并给出基本测试路径。(分数:10.00)_(3).下表是某一个软件问题的操作历史信息,请依据 QESuite Web Version 1.0的软件问题生命周期定义,填写表中空缺的 10项操作历

    13、史信息。 (分数:10.00)_已知检查括号匹配及注释、字符串处理的 C源程序如下: #includestdio.h int brace,brack,paren; void in_quote(int c); void in_comment(void); void search(int c); /*rudimentary syntax checKer for C program*/ int main() int c; extern int brace,brack,paren; while(c=getchar()!=EOF) if(c=/) if(c=getchar()=*) in_comment

    14、(); /*inside comment*/ else search(C) ; else if(c=/“|c=“) in_quote(c); /*inside quote*/ else search(c); if(brace0) /*output errors*/ printf(“Unbalanced braces/n“); brace=0; else if(brack0) printf(“Unbalanced brackets/n“); brack=0; else if(paren0) printf(“Unbalanced parentheses/n“); paren=0; if(brace

    15、0) /*output errors*/ printf(“Unbalanced braces/n“); if(brack0) printf(“Unbalanced brackets/n“); if(paren0) printf(“Unbalanced parentheses/n“); return 0; /*search:search for rudimentary syntax errors*/ void search(int c) extern int brace,brack,paren; if(c=) +brace; else if(c=) -brace; else if(c=) +br

    16、ack; else if(c=) -brack; else if(c=() +paren; else if(c=) -paren; /*in_comment:inside of a valid comment*/ void in_comment(void) int c,d; c=getchar(); d=getchar(); /*curr character*/ while(c!=*|d!=/) /*search for end*/ c=d; d=getchar(); /*in_quote:inside quote*/ void in_quote(int c) int d; while(d=g

    17、etchar()! =c) /*search end quote*/ if(d=/) getchar(); /*ignore escape seq*/ (分数:20.00)(1).画出程序中 main函数的控制流程图;(分数:10.00)_(2).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句覆盖率或分支覆盖率无法达到 100%,需说明为什么。(分数:10.00)_全国计算机等级考试四级软件测试工程师真题 2012年 3月答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2分,共 50分)下列各题 A(总题数:25,分

    18、数:50.00)1.以下叙述中不属于软件产品质量要求的是(分数:2.00)A.应满足客户的功能需求和性能要求B.应具备一定的可扩展性和灵活性,以适应需求的变化C.应能够有效地处理例外或异常情况D.应保证数据库的完整性和安全性 解析:软件产品质量要求包括:满足客户的功能需求;具备一定的可扩展性和灵活性,以适应一定程度的需求变化;能够有效地处理例外或异常情况。2.以下有关软件缺陷产生的原因中属于软件技术问题的是(分数:2.00)A.系统需求分析时对客户的需求理解不清楚B.文档错误、内容不正确或拼写错误C.系统结构不合理、算法不正确 D.不同阶段的开发人员对需求的理解不一致解析:软件缺陷产生的原因中

    19、,软件技术问题包括:算法错误;语法错误;计算和精度问题;系统结构不合理、算法选择不科学,造成系统性能低下;接口参数传递不匹配,导致模块集成出现问题。3.在软件测试的生命周期模型中建立测试脚本任务的阶段应是(分数:2.00)A.制定测试计划B.测试设计C.实施测试 D.评估测试解析:在软件测试的生存周期模型中,建立测试脚本的阶段是实施测试阶段。4.软件设计一般包括外部设计和内部设计。外部设计通常是指(分数:2.00)A.用户界面设计 B.结构设计C.数据设计D.逻辑设计解析:外部设计主要是设计用户界面。在设计前对任务和用户进行分析。5.在做静态错误分析时进行浮点数计算误差的检查应属于(分数:2.

    20、00)A.类型和单位分析B.表达式分析 C.引用分析D.接口分析解析:对浮点数计算的误差进行检查是最复杂的一类表达式分析。6.如果一个小程序中有一个由 8个两分支判断组成的连锁分支结构,如图 (分数:2.00)A.28B.16C.9 D.8解析:一般地,在串联型分支结构的情形中,若有 n个判定,利用正交实验设计法,测试路径数目可以从2n条减少到 n+12n。7.如果执行下面的 C程序,并做了成功的存储分配: char * pBuf=NULL; pBuf=(char*)malloc(100); if(pBuf=NULL) printf(“Not Enough Memory/n“); return

    21、 1; 则此段程序测试的指令块(即顺序执行的一段指令)覆盖率是(分数:2.00)A.100%B.60%C.50% D.40%解析:指令块是函数内部的一组语句,在这组语句中不存在(会引起分支的)控制语句。IB 覆盖率=被执行到的指令块数量/程序中指令块总数100%。8.在执行单元测试时最有用的测试方法是(分数:2.00)A.基本路径覆盖 B.事件序列走查C.事件响应驱动D.判定表解析:大部分情况下单元测试会选择白盒测试。故选择 A选项基本路径覆盖。9.MM路径集成是一种基于消息的路径集成方法,其中 MM路径是指(分数:2.00)A.对应调用图的每一个边建立并执行的一个集成测试会话序列B.针对模块

    22、的每一个程序剖面执行的语句序列C.按照广度优先策略逐层集成与测试的序列D.穿插出现在各模块中执行的方法和消息的序列 解析:MM路径是指穿插出现在模块执行方法和消息的序列。10.以下不属于黑盒测试用例设计的方法是(分数:2.00)A.基于用例和场景导出测试用例B.基于有限状态机导出测试用例C.基于状态的事件表导出测试用例D.基于数据流和控制流导出测试用例 解析:黑盒测试测试用例设计的方法有:基于判定表、基于因果图、基于状态图、基于场景、基于接口、基于故障、基于风险的测试。基于数据流和控制流的测试用例属于白盒测试。11.以下哪一项不是软件性能测试关注的主要内容(分数:2.00)A.检测软件的最大负

    23、载B.检测软件的响应时间C.检测软件的并发进程数 D.揭示软件在压力下出现的错误解析:响应时间属于软件的性能指标。压力测试和负载测试则属于软件性能测试的分类,故选项 C项。12.以下关于软件性能测试的说法中,正确的是(分数:2.00)A.软件性能测试的主要目的是检验软件是否能充分发挥硬件的潜能B.软件性能测试通常采用数据流测试技术生成测试用例C.软件性能测试实际上是一种软件可靠性测试D.软件性能测试的实施通常需要依赖性能测试辅助软件 解析:软件性能测试的目标是发现缺陷、性能调优、能力检验与规划。软件性能测试和可靠性测试是同一级别的测试。13.以下关于软件测试的说法中,正确的是(分数:2.00)

    24、A.通过软件可靠性测试是软件交付使用的必要条件 B.软件可靠性测试的主要目的是度量软件在实际使用中的可靠性C.软件可靠性测试通常针对软件中的每个单元进行D.软件可靠性测试是发现软件安全性问题的主要手段解析:可靠性测试的目的是通过受控的软件测试过程来预测软件在实际运行中的可靠性。故 B错。可靠性测试是针对软件系统,故 C错。安全性测试是发现软件安全性的主要手段,故 D错。14.以下关于软件可靠性测试的说法中,错误的是(分数:2.00)A.软件可靠性测试能有效地减少软件在恶意使用下出现崩溃的次数 B.定义软件运行剖面是软件可靠性测试的重要步骤C.软件可靠性测试通常需要基于软件可靠性预测模型D.软件

    25、可靠性测试不能沿用硬件可靠性测试的方法解析:软件可靠性测试是通过受控的软件测试过程来预测软件在实际运行中的可靠性,不能减少软件在恶意使刚下出现崩溃的次数,故 A错。15.以下关于面向对象程序测试的说法中,正确的是(分数:2.00)A.面向对象程序与传统程序的黑盒测试方法完全相同B.面向对象程序与传统程序的白盒测试方法有明显区别 C.单个类树的测试不属于面向对象程序单元测试关注的范畴D.对一个类的每个成员方法都进行充分的测试就完成了对该类充分的测试解析:16.以下关于面向对象程序测试的说法中,错误的是(分数:2.00)A.方法名的重载是面向对象软件测试区别于传统程序测试的一个根本因素B.展平测试

    26、是测试一棵继承树叶结点类的一种策略 C.基于判定表的测试可以用于面向对象程序的单元测试D.等价类划分测试能用于方法层次的测试解析:展平测试是对子类的测试。17.以下关于面向对象软件测试的说法中,错误的是(分数:2.00)A.测试动态绑定是类树测试的一个重要目标B.面向对象软件协作集成测试是指对一个类的多个实例间协作进行的测试 C.面向对象软件的自底向上集成测试需要为集成测试开发相应代码D.面向对象软件的单元测试需要考虑对一个类中单个方法的测试解析:18.以下关于 Web应用软件测试的说法中,正确的是(分数:2.00)A.Web应用软件测试通常不用考虑安全性测试B.与传统软件相比,Web 应用软

    27、件测试更简单C.表单测试是 Web应用软件功能测试的一项重要内容 D.测试是否存在无效链接是 Web应用软件安全性测试一项重要内容解析:Web 应用软件在安全性方面也需要达到较高的要求,故 A错。Web 应用软件的测试难度较高,故 B错。Web 应用软件功能测试包括:链接测试、表单测试、Cookie 测试,故 C对。测试是否存在无效链接是Web表示层的测试,故 D错。19.以下哪一项是软件易用性测试关注的内容(分数:2.00)A.杀毒软件在清除病毒时是否会破坏办公软件的文档B.软件提供的功能是否丰富C.软件是否支持用户根据自己的需要进行定制 D.软件是否能在多种操作系统下运行解析:易用性测试包

    28、括:易安装性测试、功能易用性测试、用户界面测试。选项 C属于功能易用性测试,故选 C。20.以下关于软件兼容性测试的说法中,正确的是(分数:2.00)A.软件兼容性测试不关注软件与硬件间的兼容性 B.等价类划分测试是软件兼容性测试的主要手段C.极限测试是一种软件兼容性测试D.排版软件是否可以打开该软件以前版本保存的文件属于软件兼容性测试关注的范畴解析:软件兼容性测试包括:与操作系统的兼容性,与数据库的兼容性,与浏览器的兼容性,与中间件的兼容性,与其他软件的兼容性,平台软件的兼容性,故 A对。等价类划分测试属于面向对象软件的单元测试。极限测试不属于软件兼容性测试。排版软件是否可以打开该软件以前保

    29、存的文件属于数据兼容性测试关注的范畴。21.以下有关测试用例设计与开发的说法中,错误的是(分数:2.00)A.白盒测试的测试用例设计不必考虑软件功能B.软件测试用例设计要关注测试用例设计的测试需求覆盖率C.自动化测试的测试脚本开发属于测试用例设计工作的一部分D.测试用例设计的主要依据是测试计划中的测试需求定义 解析:白盒测试又称为逻辑驱动的测试,这种测试策略对程序的逻辑结构进行检查,从中获取测试数据,故 A对。自动化测试的测试脚本开发属于自动化测试用例设计工作一部分,故 C对。根据产品需求分析、系统设计等规格说明书,在测试的技术方案基础上设计具体的测试用例,故 D错。测试用例是否完整、边界是否

    30、考虑,其覆盖率能达到多高,是软件测试设计要点的一部分,故 B对。22.以下有关测试环境的说法中,错误的是(分数:2.00)A.在实际的软件测试中,软件测试环境可分为主测试环境和辅测试环境B.软件测试只能在软件真实运行环境下开展 C.在测试环境准备中,无法获取真实数据时,可使用仿真数据D.测试工具的准备是属于测试环境准备的一项工作解析:由于各种资源的限制、软件测试只能在近似的模拟环境中进行。23.以下有关测试自动化的说法中,错误的是(分数:2.00)A.在自动化测试基本结构中,数据库服务器用于存储测试用例和测试结果B.自动化测试过程中,除选择测试用例和分析失败原因外,其他过程都是自动化开展的C.

    31、结构化脚本的优点是健壮性更好,可以对一些容易导致测试失败的特殊情况进行处理D.共享脚本的维护开销高于线性脚本 解析:自动化测试中,除了选择确认要执行的测试用例和分析失败原因外,其他过程都是可以自动开展的,故 B对。结构化脚本的优点是健壮性更好,可以对一些容易导致测试失败的特殊情况进行处理,故 C对。共享脚本的维护开销低于线性脚本,故 D错。24.下列有关软件集成测试的说法中,错误的是 (分数:2.00)A.软件集成测试一般由软件供方组织并实施,测试人员与开发人员应相对独立 B.软件集成测试可委托第三方进行C.软件集成测试的技术依据是软件需求文档D.进入集成测试要求待集成的软件单元已通过单元测试

    32、解析:集成测试一般是由项目负责人组织测试人员依据概要设计规格说明和集成测试计划进行的,故 A错。25.下列有关软件回归测试的说法中,错误的是(分数:2.00)A.回归测试的对象包括:在软件单元测试、集成测试、软件配置项测试和系统测试中未通过的软件B.回归测试首先应对原来未变更的软件单元进行测试,然后再对变更的软件单元进行测试 C.回归测试的内容包括原软件测试做过的测试内容、修改原软件测试做过的测试内容以及在此基础上新增的测试内容D.回归测试可根据被测软件的具体情况对软件的测试内容进行剪裁解析:回归测试有两种:一经发现并改正了程序中隐藏的缺陷,然后再重新执行以前发现这个缺陷的测试,看这个缺陷是否

    33、重现。当对发现的缺陷进行修改之后,执行一系列基准测试,以确认程序的修改没有对程序的其他部分产生干扰。故 B错。二、论述题(共 50分)(总题数:2,分数:50.00)一个简化的高铁售票系统的规格说明如下: 乘客未使用系统前系统处于“等待”状态,屏幕显示沿线各车站的站名。 乘客选择了到达站并按下购票键之后,系统进入“待付款”状态,屏幕显示票价,等待乘客付款。 如果乘客在限时之内付款,系统进入“出票”状态,打印并吐出相应车票,同时找回余额,然后系统重置回到“等待”状态。 如果乘客在限时之内未付款之前按下取消键取消购票,系统进入“等待”状态。 如果乘客在限时之内没有付款,系统进入“超时”状态,显示“

    34、超时”“取消购票”等信息,然后系统重置回到“等待”状态。 如果乘客在拿到车票后要求退票,在“等待”状态下按下退票键,系统进入“查证”状态。 如果查证成功,系统进入“退票”状态。回收车票,退回票款,然后系统重置回到“等待”状态;如果查证不成功,系统进入“警告”状态,屏幕显示“车票无效”信息,然后系统重置回到“等待”状态。(分数:30.00)(1).请根据上述规格说明,画出相应的状态转换图。(分数:10.00)_正确答案:( S1:等待 S2:待付款 S3:查证 S4:警告 S5:超时 S6:出票 S7:退票 )解析:(2).计算该状态转换图的圈复杂度并给出基本测试路径。(分数:10.00)_正确

    35、答案:(边数 m=11,结点数 n=7,因此圈复杂度 V(G)=m-n+2=7 基本测试路径: S1S2S1 S1S2S5S1 S1S2S6S1 S1S3S7S1 S1S3S4S1 S1S2S6S1S3S7S1)解析:(3).下表是某一个软件问题的操作历史信息,请依据 QESuite Web Version 1.0的软件问题生命周期定义,填写表中空缺的 10项操作历史信息。 (分数:10.00)_正确答案:( )解析:已知检查括号匹配及注释、字符串处理的 C源程序如下: #includestdio.h int brace,brack,paren; void in_quote(int c); v

    36、oid in_comment(void); void search(int c); /*rudimentary syntax checKer for C program*/ int main() int c; extern int brace,brack,paren; while(c=getchar()!=EOF) if(c=/) if(c=getchar()=*) in_comment(); /*inside comment*/ else search(C) ; else if(c=/“|c=“) in_quote(c); /*inside quote*/ else search(c); i

    37、f(brace0) /*output errors*/ printf(“Unbalanced braces/n“); brace=0; else if(brack0) printf(“Unbalanced brackets/n“); brack=0; else if(paren0) printf(“Unbalanced parentheses/n“); paren=0; if(brace0) /*output errors*/ printf(“Unbalanced braces/n“); if(brack0) printf(“Unbalanced brackets/n“); if(paren0

    38、) printf(“Unbalanced parentheses/n“); return 0; /*search:search for rudimentary syntax errors*/ void search(int c) extern int brace,brack,paren; if(c=) +brace; else if(c=) -brace; else if(c=) +brack; else if(c=) -brack; else if(c=() +paren; else if(c=) -paren; /*in_comment:inside of a valid comment*

    39、/ void in_comment(void) int c,d; c=getchar(); d=getchar(); /*curr character*/ while(c!=*|d!=/) /*search for end*/ c=d; d=getchar(); /*in_quote:inside quote*/ void in_quote(int c) int d; while(d=getchar()! =c) /*search end quote*/ if(d=/) getchar(); /*ignore escape seq*/ (分数:20.00)(1).画出程序中 main函数的控制

    40、流程图;(分数:10.00)_正确答案:( )解析:(2).设计一组测试用例,使该程序所有函数的语句覆盖率和分支覆盖率均能达到 100%。如果认为该程序的语句覆盖率或分支覆盖率无法达到 100%,需说明为什么。(分数:10.00)_正确答案:(测试用例: 依次输入:c=EOF 依次输入:c=/,c=*,c=*,d=/ 依次输入:c=/,c=*,c=*,d=,d=/ 依次输入:c=/,c=*,c=/,d=/,d=/ 依次输入:c=/,c=/ 依次输入:c=/,c= 依次输入:c=/,c= 依次输入:c=/,c= 依次输入:c=/,c= 依次输入:c=/,c=( (11)依次输入:c=/,c=) (12)依次输入:c=/,d=/ (13)依次输入:c=/,d=* (14)依次输入:c=/,d=/ (15)依次输入:c=“,d=/ (16)依次输入:c=“,d=* (17)依次输入:c=“,d=/ (18)依次输入:c= (19)依次输入:c= (20)依次输入:c= (21)依次输入:c= (22)依次输入:c=( (23)依次输入:c=/ 该程序的语句覆盖率和分支覆盖率无法达到 100%。 因为该程序中有好几个判断语句,对于有的判断语句,若取真,则取假无法执行;若取假,则取真无法执行。所以,语句覆盖率和分支覆盖率无法达到 100%。)解析:


    注意事项

    本文(【计算机类职业资格】全国计算机等级考试四级软件测试工程师真题2012年3月及答案解析.doc)为本站会员(tireattitude366)主动上传,麦多课文档分享仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文档分享(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
    备案/许可证编号:苏ICP备17064731号-1 

    收起
    展开