2012年下半年软件评测师下午试题解析及答案
- 格式:docx
- 大小:404.59 KB
- 文档页数:11
全国计算机技术与软件专业技术资格(水平)考试2012年下半年软件评测师上午试卷(考试时间 9 : 00~11 : 30 共 150 分钟)1. 在答题卡的指定位置上正确写入你的姓名和准考证号,并用正规 2B 铅笔在你写入的准考证号下填涂准考证号。
2. 本试卷的试题中共有 75 个空格,需要全部解答,每个空格 1 分,满分75 分。
3. 每个空格对应一个序号,有 A、B、C、D 四个选项,请选择一个最恰当的选项作为解答,在答题卡相应序号下填涂该选项。
4. 解答前务必阅读例题和答题卡上的例题填涂样式及填涂注意事项。
解答时用正规 2B 铅笔正确填涂选项,如需修改,请用橡皮擦干净,否则会导致不能正确评分。
例题● 2012 年下半年全国计算机技术与软件专业技术资格(水平)考试日期是(88)月(89)日。
(88)A. 9 B. 10 C. 11 D. 12(89)A. 4 B. 5 C. 6 D. 7 因为考试日期是“11 月 4 日”,故(88)选 C,(89)选 A,应在答题卡序号 88 下对 C 填涂,在序号 89 下对 A 填涂(参看答题卡)。
●在CPU中,(1)不仅要保证指令的正确执行,还要能够处理异常事件。
(1)A.运算器 B.控制器 C.寄存器组 D.内部总线●循环冗余校验码(CRC)利用生成多项式进行编码。
设数据位为k位,校验位为r位,则CRC码的格式为(2)。
(2)A.k个数据位之后跟r个校验位 B.r个校验位之后跟k个数据位C.r个校验位随机加入k个数据位中D.r个校验位等间隔地加入k个数据位中●以下关于数的定点表示和浮点表示的叙述中,不正确的是(3)。
(3)A.定点表示法表示的数(称为定点数)常分为定点整数和定点小数两种B.定点表示法中,小数点需要占用一个存储位C.浮点表示法用阶码和尾数来表示数,称为浮点数D.在总位数相同的情况下,浮点表示法可以表示更大的数●(4)不属于按寻址方式划分的一类存储器。
第8章 软件评测师下午试题分析与解答 试题一 阅读下列说明,回答问题1至问题3,将解答填入对应栏内。 【说明】 以下代码由C语言书写,能根据指定的年、月计算当月所含天数。 int GetMaxDay( int year, int month ) { int maxday = 0; if ( month >= 1 && month <= 12 ) { if ( month == 2 ) { if ( year % 4 == 0 ) { if ( year % 100 == 0 ) { if ( year % 400 == 0 ) maxday = 29; else maxday = 28; } else maxday = 29; } else maxday = 28; } else { if ( month == 4 || month == 6 || month == 9 || month == || ) maxday = 30; else maxday = 31; } } return maxday; } 【问题1】 请画出以上代码的控制流图。 【问题2】 请计算上述控制流图的环路复杂度V(G)。 【问题3】 假设year的取值范围是1000<year<2001,请使用基本路径测试法为变量year、 month设计测试用例(写出year取值、month取值、maxday预期结果),使之满足基本路径覆盖要求。 [答案] [问题1] 注:图中标注为1、2、3、4、5、6的圆可部分或全部省略。 [问题2] V(G)=7 [问题3] (用例编号可以不写) 用例编号 year取值 month取值 maxday预期结果 1 1001~2000这间任意整数 [1、2]之外的任意整数 0
2 1001~2000之间不能被4整除的任意整数,如1001、1002、1003等 2 28
3 1001~2000之间能被4整除但不能被100不止除的任意整流器数,如1004、1008、1012、1016等 2 29 4 1001~2000之间能被100整除但不能被400整除的任意整数,如1100、1300、1400、1500、1700、1800、1900等 2 28 5 1001~2000之间能被400整除的任意整数,如1200、1600、2000等 2 29 6 1001~2000之间任意整数 1、3、5、7、8、10、12中的任意一个 31 7 1001~2000之间任意整数 4、6、9、11中的任意一个 30 试题一分析 本题考查白盒测试用例设计方法——基本路径法的应用。 [问题1] 考查绘制模块控制流图。 模块控制流图是与程序流程图相类似的由许多结点和连接结点的边组成的一种图形,其中一个结点代表一条语句或数条语句,边表示结点间的控制流向,它显示了一个函数的内部逻辑结构。 [问题2] 考查计算控制流图的环路复杂性V(G)。 环路复杂性V(G)的计算方法包括: ·控制流程图中的区域数。 ·条边数-结点数+2。 ·判定数+1。 [问题3] 考查基本路径测试法的应用。 路径测试法要求满足基本路径覆盖的要求。 在进行程序的基本路径测试时,从程序的环路复杂性可导出程序基本路径集合中的独立路径条数,这是确保程序中每个可执行语句至少执行一次所必需的测试用例数目的上界。独立路径是指包括一组以前没有处理的语句或条件的一条路径。例如针对本题所对应的控制流图中,一组独立的路径如下。 ·path1:year取值1001~2000之间任意整数,month取值13或14。 ·path2:year取值1001~2000之间不能被4整除的整数,month取值2。 ·path3:year取值1001~2000之间能被4整除但不能被100整除的整数,month取值2。 ·path4:year取值1001~2000之间能被100整除但不能被400整除的整数,month取值2。 ·path5:year取值1001~2000之间任意整数,month取值2。 ·path6:year取值1001~2000之间任意整数,month取值1、3、5、7、8、10或12。 ·path7:year取值1001~2000之间任意整数,month取值4、6、9或11。 路径path1、path2、path3、path4、path5、path6以及path7组成一个基本路径集。只要设计出的测试用例能够确保这些基本路径的执行,就可以使得程序中的每个可执行语句至少执行一次。 试题二 阅读下列说明,回答问题1至问题5,将解答填入对应栏内。 【说明】 负载压力性能测试是评估系统性能、性能故障诊断以及性能调优的有效手段。下述表格是针对税务征管系统中“税票录入”业务的测试结果,系统服务器端由应用服务器和单结点数据库服务器组成。
软件测试中期测试答案一、判断题(10分)软件测试只能发现错误,但不能保证测试后的软件没有错误。
(√)软件测试就是为了验证软件功能实现的是否正确,是否完成既定目标的活动,所以软件测试在软件工程的后期才开始具体的工作。
(× )测试人员说:“没有可运行的程序,我无法进行测试工作”。
(× )单元测试通常应该先进行“人工走查”,再以白盒法为主,辅以黑盒进行动态测试。
(√)5.功能测试属于白盒测试的技术范畴。
(×)6.黑盒测试的测试用例是根据程序内部逻辑设计的。
(×)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。
(√)集成测试也叫做组装测试,通常在编码完成的基础上,将所有的程序模块进行有序的、递增的测试( × )第三方测试是在开发方与用户方的测试基础上进行的验证测试 ( × )10.验收测试是由最终用户来实施的。
(×)二、多项选择题(5分)从是否需要执行被测软件的角度,软件测试技术可划分的类型是:( AC )。
A、静态测试B、黑盒测试C、动态测试D、白盒测试2.下面选项中可能导致软件缺陷的原因有( ABD )。
A、软件需求说明书编写的不全面,不完整,不准确,而且经常更改B、软件设计说明书编写不准确C、软件使用人员的水平D、开发人员不能很好的理解需求说明书和沟通不足3.IIS提供的服务有( ABCD )A. FTPB. WWWC. SMTPD. NNTPVSS是一款配置管理工具,它提供了完善的版本和配置管理功能,VSS中我们处理的所有文档都称为文件,VSS对文件的常用操作有( ABC )A. check outB. check inC. undo check outD. copy5.典型的瀑布模型的四个阶段是:(BCDE)A、需求调研B、分析C、设计D、编码E、测试F、实施三、单项选择题(15分)单元测试主要针对模块的几个基本特征进行测试,该阶段不能完成的测试是( A )。
2012下软件测试2012年(下)全国信息技术水平考试软件测试技术水平证书考试试卷理论部分一、单项选择题(本大题共30小题,每题1.5分,共45分)1. 1977年McCall和他的同事确立了质量11个要素,他们是:正确性、可靠性、效率、完整性、可使用性、可维护性、灵活性、可测试性、()A. 可移植性、重复使用性、连接性B.封装、对象、重复使用性C.高可用性、高耦合性、高耐久性D.易用性、安全性、重复使用性2、GB/T16260-2006《软件工程产品质量》是一个重要它包括16260.1、16260.2、16260.3、16260.4,他们分别对应()A.内部度量、外部度量、质量模型、使用质量度量B.质量模型、外部度量、内部度量、使用质量度量C.质量模型、内部度量、外部度量、使用质量度量D.内部度量、外部度量、使用质量度量、质量模型3、许多研究机构和测试服务机构从不!出发提出有关软件测试方面的能力成熟度模型,其中I.T.I公司提出的( )提供了与CMM完全一样的5级模型。
A.测试支持模型B.测试能力成熟度模型C.测试成熟度模型D.测试职能模型4、上个世纪60年代,随着()软件随意开发已经不能满足其质量要求,软件危机随之诞生。
①软件规模、复杂度的变化②高级语言的出现⑨大规模存储器出现④快速cpu出现⑤嵌入式软件出现⑥图形化界面出现A.①②③⑥B.①②③④C.③④⑤⑥D.①③④⑤5、使用人工或自动化手段来运行或测定某个系统的过程,其目的在于检验它是否定的需求或是发现预期结果与实际结果之8、相对于自动化测试,手工测试的局限性包括(①通过手工测试无法做到覆盖所有代码路径②功能测试用例往往具有一定的重复性③性能测试需要模拟大的压力时,手工测试无法实现④大量测试用例如果需要短时间内完成,手工测试几乎做不到A.①②③B.②③④C.①②④ D. ①②③④9、软件缺陷随软件测试产生,哒鹭的定义包括( )①软件未达到产品说明书标明的功能②软件出现了产品说明书指明不会出现的错误⑧软件功能超出产品说明书指明范围④软件未达到产品说明书虽未指出但应达到的目标⑤软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好A.①②③B,②③④C.①②④D.①②③④10、缺陷探测率DDP是衡量一个公司测试工作效率的软件质量成本的指标,已知某公司开发一个软件产品的过程中,开发人员自行发现并修正缺陷数量为80个,测试人员A发现缺陷数量为50个,测试人员B现缺陷数量为50个,测试人员A和测试人员B发现的缺陷不重复,客户反馈缺陷数量为50个,则该公司针对产品的缺陷探测率为()A. 56.5%B. 78.6%C.43. 5% D.34. 8%11、数据库系统运行在操作系统上,它与操作系统紧密相关,下列关于这种关系的描述中错误的是()A.数据库系统具有自己的设备管理、进程管理、内存管理、存储管理、作业管理功能B.数据库的存储管理、内存管理等功能的实现都是基于底层操作系统的功能调用,和操作系统的各功能模块密切相关C.操作系统的任何硬件、软件失败,都可能影响数据库系统的正常运行D.对数据库系统的管理和维护,离不开操作系统的管理和维护。
试题一(共15 分)【说明】某学校欲开发图书管理系统,以记录图书馆所藏图书及其借出和归还情况,提供给借阅者借阅图书功能,提供给图书馆管理员管理和定期更新图书表功能。
主要功能的具体描述如下:(1)处理借阅。
借阅者要借阅图书时,系统必须对其身份(借阅者ID)进行检查。
通过与教务处维护的学生数据库、人事处维护的职工数据库中的数据进行比对,以验证借阅者ID 是否合法。
若合法,则检查借阅者在逾期未还图书表中是否有逾期未还图书,以及罚金表中的罚金是否超过限额。
如果没有逾期未还图书并且罚金未超过限额,则允许借阅图书,更新图书表,并将借阅的图书存入借出图书表。
借阅者归还所借图书时,先由图书馆管理员检查图书是否缺失或损坏,若是,则对借阅者处以相应罚金并存入罚金表;然后,检查所还图书是否逾期,若是,执行“处理逾期”操作;最后,更新图书表,删除借出图书表中的相应记录。
(2)维护图书。
图书馆管理员查询图书信息;在新进图书时录入图书信息,存入图书表:在图书丢失或损坏严重时,从图书表中删除该图书记录。
(3)处理逾期。
系统在每周一统计逾期未还图书,逾期未还的图书按规则计算罚金,并记入罚金表,并给有逾期未还图书的借阅者发送提醒消息。
借阅者在借阅和归还图书时,若罚金超过限额,管理员收取罚金,并更新罚金表中的罚金额度。
现采用结构化方法对该图书管理系统进行分析与设计,获得如图1-1 所示的顶层数据流图和图1-2 所示的0 层数据流图。
【问题1】(4 分)使用说明中的词语,给出图1-1 中的实体E1~E4 的名称。
E1 借阅者E2 图书馆管理员E3 学生数据库E4 职工数据库【问题2】(4 分)使用说明中的词语,给出图1-2 中的数据存储D1~D4 的名称。
D1 图书表D2 借出图书表D3 逾期未还图书表D4 罚金表【问题3】(5 分)在DFD 建模时,需要对有些复杂加工(处理)进行进一步精化,绘制下层数据流图。
针对图1-2 中的加工“处理借阅”,在1 层数据流图中应分解为哪些加工?(使用说明中的术语)身份检查检查逾期未还图书检查罚金是否超过限额借阅图书归还图书处理逾期【问题4】(2 分)说明【问题3】中绘制1 层数据流图时要注意的问题。
2012年下半年软件评测师下午试题解析及答案 试题一(共19分)负载压力测试 【说明】 某酒店预订系统有两个重要功能,检索功能和预订功能。检索功能根据用户提供的关键字检索出符合条件的酒店列表,预订功能是对选定的某一酒店进行预订,现需要对该系统执行负载压力测试。 该酒店预订系统的性能要求为: (1)交易执行成功率100%; (2)检索响应时间在3s以内; (3)检索功能支持900个并发用户; (4)预订功能支持100个并发用户; (5)CPU利用率不超过85%; (6)系统要连续稳定运行72小时 【问题1】(3分) 简述该酒店预订系统在生产环境下承受的主要负载类型。 【问题2】(5分) 对系统检索功能执行负载压力测试,测试结果如表1-1所示。请指出响应时间和交易执行成功率的测试结果是否满足性能需求并说明原因。 表1-1 检索功能测试结果 检索执行情况 并发用户数 响应时间(s)(平均值) 交易执行成功率
500 1.3 100% 900 3.7 100% 1000 6.6 98% 【问题3】(5分) 对系统检索功能及预订功能执行负载压力测试,测试结果如表1-2所示。请指出服务器资源利用情况cpu占用率的测试结果是否满足性能需求并说明原因。 表1-2 系统测试结果 服务器资源利用情况 并发用户数 CPU占用率(%) (平均值) 检索功能并发用户 预订功能并发用户数
500 50 35.5 900 100 87.3 1000 120 92.6
【问题4】(6分) 根据【问题2】和【问题3】的测试结果,试分析该系统的可能瓶颈。
参考答案: 问题1、该酒店预订系统在生产环境下承受的主要负载类型: • 检索功能、预订功能并发用户的操作是属于并发执行负载; • 连续运行72小时是属于疲劳强度负载; • 大量“稿件查询”操作是属于大数据量负载。 【问题4】(5分) 对系统检索功能执行负载压力测试,响应时间和交易执行成功率的测试结果不能满足性能需求。 因为: 1、系统检索功能执行并发用户数为900时,其响应时间为3.7s与检索响应时间在3s以内不能满足性能需求,交易执行成功率为100%满足性能需求。 2、系统检索功能执行并发用户数为1000时,其响应时间为6.6s与检索响应时间在3s以内不能满足性能需求,交易执行成功率为98%不能满足性能100%需求。
【问题4】(6分) 根据【问题2】和【问题3】的测试结果,该系统的存在瓶颈。 服务器资源利用情况: 1在执行检索功能测试时并发用户为900、1000时响应时间超过3s; 2在检索功能并发用户为900,预订功能并发用户数为100时,CPU占用率(%)(平均值)达到87.3超过85%; 3在检索功能并发用户为1000,预订功能并发用户数为120时,CPU占用率(%)(平均值)达到92.6超过85%; 可能的瓶颈如下: (1)服务器CPU 性能不足; (2)数据库设计不足或者优化不够; (3)检索功能预订功能应用软件设计不足或没有优化; (4)网络带宽不足。
试题二(共15分)白盒测试 阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 逻辑覆盖法是设计白盒测试用例的主要方法之一,它是通过对程序逻辑结构的遍历实现程序的覆盖。针对以下由C语言编写的程序,按要求回答问题。 Struct_ProtobufCIntRange{ Int start_value; Unsigned orig_index; }; typedef struct_ProtobufCIntRange ProtobufCIntRange; in tint_range_lookup(unsigned n_ranges,const ProtobufCIntRange*ranges,int value){ unsigned start,n; //1 start=0; n=n_ranges; while (n>l) { //2 unsigned mid=start+n/2; if(value n=mid-start; //4 } else if (value>=ranges[mid].start_value+ (int)(ranges[mid+1].orig_index-ranges[mid].orig_index)){ //5 unsigned new_start=mid+1; //6 n=start+n-new_start; start=new_start; } else //7 return(value-ranges[mid].start_value)+ranges[mid].orig_index; } if(n>0){ //8 unsigned start_orig_index=ranges[start].orig_index; unsigned range_size=ranges[start+1].orig_index-start_orig_index; if (ranges[start].start_value<=value &&value<(int)(ranges[start].start_value+range_size)) //9,10 Return(value-ranges[start].start_value)+start_orig_index; //11 } Return -1; //12 //13 【问题1】(5分) 请给出满足100%DC(判定覆盖)所需的逻辑条件。 【问题2】(7分) 请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。 【问题3】(3分) 请给出【问题2】中控制流图的线性无关路径。 试题二分析 本题考查白盒测试法的应用。 【问题1】 本问题考查白盒测试用例设计方法中的判定覆盖法。 判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。本题中程序有5个判定,所以满足判定覆盖一共需要10个逻辑条件,如下表所示。 编号 条件 1 n>l 2 value3 value>=ranges[mid].start_value+(int)(ranges[mid+1].orig_index-ranges[mid].orig_index) 4 n>0 5 ranges[start].start_value<=value&&value<(int)(ranges[start].start_value+range_size) 6 n<=l 7 Value>=ranges[mid].start_value 8 Value<=ranges[mid].start_value+(int)(ranges[mid+1].orig_index-ranges[mid].orig_index) 9 N<=0 10 ranges[start].start_value>value or value>=(int)(ranges[start].start_value+range_size)
【问题2】 本问题考查白盒测试用例设计方法中的基本路径法。涉及到的知识点包括:根据代码绘制控制流图、计算环路复杂度。 控制流图是描述程序控制流的一种图示方法。其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。基本结构如下所示:
根据题中程序绘制的控制流图如下所示。其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套的判断。本题程序中,if (ranges[start].start_value<=value&&value<(int)(ranges[start].start_value+range_size))这条判断语句中的判定由两个条件组成,因此在画控制流图的时候需要拆开成两条判断语句。 环路复杂度用来衡量一个程序模块所包含的判定结构的复杂程度,数量上表现为独立路径的条数,即合理地预防错误所需测试的最少路径条数。环路复杂度等于图中判定结点的个数加1,图中判定结点个数为6,所以(G)=7。 【问题3】 本问题考查白盒测试用例设计方法中的基本路径法。 [path1]1-2-8-9-10-11-13 [path2]1-2-8-9-10-11-12 [path3]1-2-8-9-10-12-13 [path4]1-2-8-9-12-13 [path5]1-2-3-4-2… [path6] 1-2-3-5-6-2… [path7 1-2-3-5-7-2… 试题三(共17分)WEB链接、安全测试 阅读下列说明回答问题1至问题4,将解答填入答题纸的对应栏内。 【说明】 某企业想开发一套B2C系统,其主要目的是在线销售商品和服务,使顾客可以在线浏览和购买商品和服务,系统的用户的IT技能,访问系统的方式差异较大,因此系统的易用性、安全性、兼容性等方面的测试至关重要。 系统要求: (1)所有链接都要正确; (2)支持不同移动设备,操作系统和浏览器; (3)系统需通过SSL进行访问,没有登录的用户不能访问应用内部的内容。 【问题1】(5分) 简要叙述链接测试的目的以及测试的主要内容。 【问题2】(4分) 简要叙述为了达到系统要求(2),要测试哪些方面的兼容性。 【问题3】(4分) 本系统强调安全性,简要叙述Web应用安全测试应考虑哪些方面。 【问题4】(4分) 针对系统要求(3),设计测试用例以测试Web应用的安全性。
参考答案: 【问题1】(5分) 链接测试的目的:用来检验Web 网站提供信息的正确性、准确性和相关性。 测试的主要内容:系统的链接测试主要测试如下3 个方面: 1)每个链接是否能够链接到目标页面 2)被链接的页面是否存在 3)是否存在孤立页面 【问题2】(4分) 为了达到系统要求能支持不同移动设备,操作系统和浏览器;要测试的兼容性见下表: 表:兼容性测试矩阵示例 浏览器 操作系统 IE7、8、9 Frirfox Goole Chrome Safari „.
Windowss XP Windwos 7 Android ios „. 【问题3】(4分) Web应用安全测试应考虑下面内容: • 目录测试 • SSL套接字测试 • 登录验证 • 日志文件 • 脚本语言