2014年下半年软件评测师下午真题(含答案)
2014年下半年 软件设计师 考试试题答案解析

三总线结构的计算机总线系统由(1)组成。
(1)A.CPU总线、内存总线和IO总线 B.数据总线、地址总线和控制总线C.系统总线、内部总线和外部总线D.串行总线、并行总线和PCI总线【答案】B【解析】本题考查计算机系统基础知识。
总线上传输的信息类型分为数据、地址和控制,因此总线由数据总线、地址总线和控制总线组成。
计算机采用分级存储体系的主要目的是为了解决(2)问题。
(2)A.主存容量不足 B.存储器读写可靠性C.外设访问效率D.存储容量、成本和速度之间的矛盾【答案】D【解析】本题考查计算机系统基础知识。
计算机系统中,高速缓存一般用SRAM,内存一般用DRAM,外存一般采用磁存储器。
SRAM 的集成度低、速度快、成本高。
DRAM的集成度高,但是需要动态刷新。
磁存储器速度慢、容量大、价格便宜。
因此,不同的存储设备组成分级存储体系,来解决速度、存储容量和成本之间的矛盾。
属于CPU中算术逻辑单元的部件是(3)。
(3)A.程序计数器 B.加法器 C.指令寄存器 D.指令译码器【答案】B【解析】本题考查计算机系统基础知识。
程序计数器、指令寄存器和指令译码器都是CPU中控制单元的部件,加法器是算术逻辑运算单元的部件。
内存按字节编址从A5000H到DCFFFH的区域其存储容量为(4)。
(4)A.123KB B.180KB C.223KB D.224KB【答案】D【解析】本题考查计算机系统基础知识。
从地址A5000H到DCFFFH,存储单元数目为37FFFH (即224*1024)个,由于是字节编址,从而得到的存储容景为224KB。
以下关于RISC和CISC的叙述中,不正确的是(5)。
(5)A.RISC通常比CISC的指令系统更复杂B.RISC通常会比CISC配置更多的寄存器C.RISC编译器的子程序库通常要比CISC编译器的子程序库大得多D.RISC比CISC更加适合VLSI工艺的规整性要求【答案】A【解析】本题考查计算机系统基础知识。
2014下半年程序员考试真题及答案-下午卷

2014下半年程序员考试真题及答案-下午卷试题一(共15分)阅读以下说明和流程图,填补流程图中的空缺(1)〜(5),将解答填入答题纸的对应栏内。
【说明】本流程图旨在统计一本电子书中各个关键词出现的次数。
假设已经对该书从头到尾依次分离出各个关键词{A(i)|i=1,…,n}(n>1) },其中包含了很多重复项,经下面的流程处理后,从中挑选出所有不同的关键词共m个{K(j)lj=l,…,m},而每个关键词K(j)出现的次数为K(j),j=1,…,m。
【流程图】【参考答案】(1) 1 (2) K(j)(3)NK(j)+1->NK(j) 或NK(j)++ 或等价表示(4)m+1->m 或m++ 或等价表示(5)A(i)【试题解析】流程图中的第1框显然是初始化。
A (1) ->K(1)意味着将本书的第1个关键词作为选出的第1个关键词。
1->NK (1)意味着此时该关键词的个数置为1。
m是动态选出的关键词数目,此时应该为1,因此(1)处应填1。
本题的算法是对每个关键词与已选出的关键词进行逐个比较。
凡是遇到相同的,相应的计数就增加1;如果始终没有遇到相同关键词的,则作为新选出的关键词。
流程图第2框开始对i=2,n循环,就是对书中其他关键词逐个进行处理。
流程图第3 框开始j=l,m循环,就是按已选出的关键词依次进行处理。
接着就是将关键词A(I)与选出的关键词K(j)进行比较。
因此(2)处应填K(j)。
如果A(i)=K(j),则需要对计数器NK(j)增1,即执行NK(j)+1->NK(j)。
因此(3)处应填NK(j)+1->NK(j)。
执行后,需要跳出j循环,继续进行i循环,即根据书中的下一个关键词进行处理。
如果A(i)不等于NK(j),则需要继续与下个NK(j)进行比较,即继续执行j循环。
如果直到j循环结束仍没有找到匹配的关键词,则要将该A(i)作为新的已选出的关键词。
2014年下半年下午 程序员 试题及答案与解析-软考考试真题-案例分析

2014年下半年下午程序员考试试题-案例分析-答案与解析试题一(共15分)阅读以下说明和流程图,填补流程图中的空缺(1)〜(5),将解答填入答题纸的对应栏内。
【说明】本流程图旨在统计一本电子书中各个关键词出现的次数。
假设已经对该书从头到尾依次分离出各个关键词{A(i)|i=1,…,n}(n>1) },其中包含了很多重复项,经下面的流程处理后,从中挑选出所有不同的关键词共m个{K(j)lj=l,…,m},而每个关键词K(j)出现的次数为K(j),j=1,…,m。
【流程图】【参考答案】(1)、1(2)、K(j)(3)、NK(j)+1->NK(j) 或NK(j)++ 或等价表示(4)、m+1->m 或m++ 或等价表示(5)、A(i)【答案解析】流程图中的第1框显然是初始化。
A (1) ->K(1)意味着将本书的第1个关键词作为选出的第1个关键词。
1->NK (1)意味着此时该关键词的个数置为1。
m是动态选出的关键词数目,此时应该为1,因此(1)处应填1。
本题的算法是对每个关键词与已选出的关键词进行逐个比较。
凡是遇到相同的,相应的计数就增加1;如果始终没有遇到相同关键词的,则作为新选出的关键词。
流程图第2框开始对i=2,n循环,就是对书中其他关键词逐个进行处理。
流程图第3 框开始j=l,m循环,就是按已选出的关键词依次进行处理。
接着就是将关键词A(I)与选出的关键词K(j)进行比较。
因此(2)处应填K(j)。
如果A(i)=K(j),则需要对计数器NK(j)增1,即执行NK(j)+1->NK(j)。
因此(3)处应填NK(j)+1->NK(j)。
执行后,需要跳出j循环,继续进行i循环,即根据书中的下一个关键词进行处理。
如果A(i)不等于NK(j),则需要继续与下个NK(j)进行比较,即继续执行j循环。
如果直到j循环结束仍没有找到匹配的关键词,则要将该A(i)作为新的已选出的关键词。
2014软件水平考试软件评测师真题及答案综合

2014软件水平考试软件评测师真题及答案综合说明:答案和解析在试卷最后第1部分:单项选择题,共74题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]三总线结构的计算机总线系统由组成。
A)CPU总线、内存总线和IO 总线B)数据总线、地址总线和控制总线C)系统总线、内部总线和外部总线D)串行总线、并行总线和PCI 总线2.[单选题]计算机采用分级存储体系的主要目的是为了解决的问题。
A)主存容量不足B)存储器读写可靠性C)外设访问效率D)存储容量、成本和速度之间的矛盾3.[单选题]属于CPU中算术逻辑单元的部件是。
A)程序计数器B)加法器C)指令寄存器D)指令译码器4.[单选题]内存按字节编址从A5000H到DCFFFH的区域其存储容量为。
A)123KBB)180KBC)223KBD)224KB5.[单选题]以下关于RISC和CISC的叙述中,不正确的是。
A)RISC通常比CISC 的指令系统更复杂B)RISC通常会比 CISC 配置更多的寄存器C)RISC编译器的子程序库通常要比CISC编译器的子程序库大得多D)RISC比CISC更加适合VLSI 工艺的规整性要求6.[单选题]以下叙述中,正确的是。
A)编译正确的程序不包括语义错误B)编译正确的程序不包括语法错误C)除数为0 的情况可以在语义分析阶段检查出来D)除数为0 的情况可以在语法分析阶段检查出来7.[单选题]已知函数f() 、g() 的定义如下所示,执行表达式“ x=f(5) ”的运算时,若函数调用g(a) 是引用调用( call by reference )方式,则执行“ x=f(5) ”后x 的值为(7) ;若函数调用g(a) 是值调用( call by value )方式,则执行“x=f(5) ”后x 的值为(8) 。
(7)A)20B)25C)60D)758.[单选题](8)A)20B)25C)60D)759.[单选题]算术表达式a*(b-c)+d 的后缀式是。
2014软件水平考试(中级) 软件设计师真题及答案综合

2014软件水平考试(中级) 软件设计师真题及答案综合说明:答案和解析在试卷最后第1部分:单项选择题,共69题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]下图所示为(46)设计模式,适用于(47)。
A)一个系统要由多个产品系列中的一个来配置时B)当一个类希望由它的子类来指定它所创建的对象时C)当创建复杂对象的算法应该独立于该对象的组成部分及其装配方式时D)当一个系统应该独立于它的产品创建、构成和表示时2.[单选题]在如下所示的进程资源图中,(27);该进程资源图是(28)。
A)P1、P2、P3都是阻塞节点B)P1是阻塞节点,P2、P3是非阻塞节点C)P1、P2是阻塞节点,P3是非阻塞节点D)P1、P2是非阻塞节点,P3是阻塞节点3.[单选题]A)π1,2,7(σ2=‘信息’,∧3=5∧4=6∧7’北京’(R×S))B)π1,2,7(σ3==5∧4=6(σ2=‘信息’(R)×σ5=‘北京’(S)))C)π1,2,7(σ3==5∧4=6∧2=‘’(R×σ7=’’(S)))D)π1,2,7(σ3==5∧4=6∧7=‘北京’(σ2=‘信息’(R)×(S)))4.[单选题]DHCP客户端可以从DHCP服务器获得(69)。
A)DHCP服务器的地址和Web服务器的地址B)DNS服务器的地址和DHCP服务器的地址C)客户端地址和邮件服务器地址D)默认网关的地址和邮件服务器地址5.[单选题]Flynn分类法基于信息流特征将计算机分成4类,其中(6)只有理论意义而无实例。
A)SISDB)MISDC)SIMDD)MIMD6.[单选题]ICMP协议属于因特网中的(67)协议,ICMP协议数据单元封装在(68)中传送。
A)以太帧B)TCP段C)UDP数据报D)IP数据报7.[单选题]PPP中的安全认证协议是(66),它使用三次握手的会话过程传送密文。
A.MDSB.PA)PB)CHC)PD)NCP8.[单选题]Teams are required for most engineering projects. Although some small hardware or software products can be developed by individuals, the scale and complexity of modem systems is such, and the demand for short schedules so great, that it is no longer ___71___ for one person to do most engineering jobs. Systems development is a team ___72___, and the effectiveness of the team largely determines the ___73___ of the engineering.Development teams often behave much like baseball or basketball teams. Even though they may have multiple specialties, all the members work toward ___74___. However, on systems maintenance and enhancement teams, the engineers often work relatively independently, much likewrestling and track teams.A team is ___75__ just a group of people who happen to work together. Teamwork takes practice and it involves special skills. Teams require common processes; they need agreed-upon goals; and they need effective guidance and leadership. The methods for guiding and leading such teams are well known,but they are not obvious.A)activityB)jobC)processD)application9.[单选题]Teams are required for most engineering projects. Although some small hardware or software products can be developed by individuals, the scale and complexity of modem systems is such, and the demand for short schedules so great, that it is no longer ___71___ for one person to do most engineering jobs. Systems development is a team ___72___, and the effectiveness of the team largely determines the ___73___ of the engineering.Development teams often behave much like baseball or basketball teams. Even though they may have multiple specialties, all the members work toward ___74___. However, on systems maintenance and enhancement teams, the engineers often work relatively independently, much likewrestling and track teams.A team is ___75__ just a group of people who happen to work together. Teamwork takes practice and it involves special skills. Teams require common processes; they need agreed-upon goals; and they need effective guidance and leadership. The methods for guiding and leading such teams are well known,but they are not obvious.A)multiple objectivesB)different objectivesC)a single objectiveD)independent objectives10.[单选题]Teams are required for most engineering projects. Although some small hardware or software products can be developed by individuals, the scale and complexity of modem systems is such, and the demand for short schedules so great, that it is no longer ___71___ for one person to do most engineering jobs. Systems development is a team ___72___, and the effectiveness of the team largely determines the ___73___ of the engineering.Development teams often behave much like baseball or basketball teams. Even though they may have multiple specialties, all the members work toward ___74___. However, on systems maintenance and enhancement teams, the engineers often work relatively independently, much likewrestling and track teams.A team is ___75__ just a group of people who happen to work together. Teamwork takes practice and it involves special skills. Teams require common processes; they need agreed-upon goals; and they need effective guidance and leadership. The methods for guiding and leading such teams are well known,but they are not obvious.A)sizeB)qualityC)scaleD)complexity11.[单选题]UML图中,一张交互图显示一个交互,由一组对象及其之间的关系组成,包含它们之间可能传递的消息。
2014年下半年下午 软件测评师 试题及答案与解析-全国软考真题

2014年下半年下午软件测评师考试试题-案例分析-答案与解析试题一(共15分)【说明】阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。
【C程序】int GetMaxDay( int year, int month){int maxday=0; //1if( month>=1&&month<=12){ //2,3if(month==2){ //4if( year%4==0){ //5if(year%100==0){ //6if(year%400==0) //7maxday= 29; //8else //9maxday= 28;}else //10maxday= 29;}elsemaxday = 28; //11}else{ //12if (month==4||month==6||month==9||month==11) //13, 14,15,16maxday = 30; //17else //18maxday = 31;}}return maxday; //19}【问题1】请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。
【答案解析】试题分析】判定覆盖指设计足够的测试用例,使得被测程序中每个判定表达式至少获得一次“真”值和“假”值,从而使程序的每一个分支至少都通过一次。
本题中程序有6个判定,所以满足判定覆盖一共需要12个逻辑条件。
【问题2】请画出上述程序的控制流图,并计算其环路复杂度V(G)。
【答案解析】【试题分析】涉及到的知识点包括根据代码绘制控制流图、计算环路复杂度。
控制流图是描述程序控制流的一种图示方式,它由节点和定向边构成。
控制流图的节点代表一个基本块,定向边代表控制流的方向。
其中要特别注意的是,如果判断中的条件表达式是复合条件,即条件表达式是由一个或多个逻辑运算符连接的逻辑表达式,则需要改变复合条件的判断为一系列之单个条件的嵌套判断。
2014年下半年软件水平考试(中级)信息系统监理师下午(应用技术

2014年下半年软件水平考试(中级)信息系统监理师下午(应用技术)真题试卷(题后含答案及解析)题型有:1. 试题一 2. 试题二 3. 试题三 4. 试题四 5. 试题五试题一1.阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】某企业信息系统工程项目,包含综合布线工程、网络工程、主机系统工程、企业业务软件开发工程等4个子项目。
建设单位甲通过公开招标方式确定承建单位,某知名集团公司丁的全资子公司乙经过竞标,赢得工程合同。
建设单位甲委托监理公司丙承担项目的监理工作,在项目实施过程中发生了如下事件:[事件1】工程正式开工之前,乙方项目经理对综合布线工程、网络工程、主机系统工程等子项目制订了详细的实施计划,由于工期较紧,计划安排综合布线工程与网络工程、主机系统工程并行实施,同时完成安装工作并进行加电联调达到要求后,报监理方签字认可。
[事件2]在项目业务软件开发实施过程中,由于乙方未按要求投入所需的主要技术人员等原因,导致项目进度滞后,甲、丙方多次要求乙方尽快补齐所缺人员。
迫于甲、丙方的一再督促,乙方在甲、丙方不知情的情况下,从母公司丁抽调多名资深技术人员加入到本项目的现场开发工作中,丙方在巡查中发现后,向乙发出停工令,要求新加入人员所承担的工作暂时停工,乙方认为监理方的做法错误并影响了工程进度,并应该补偿由此造成的工期损失。
[事件3]为了确保项目质量,及时发现问题,项目总体设计方案完成后,进入评审过程。
甲、丙方对此非常重视,聘请了数位资深业务专家和信息化专家参加评审会。
评审会由信息化专家主持,对总体设计方案进行讨论,得出了评审结论。
会后,参会的几位监理工程师经过讨论,形成最终的监理意见。
[事件4]在专题监理会议上,甲方现场负责人发言指出:由于甲方业务及其流程发生变化,要求正在实施的应用软件功能做相应的变更。
会后,乙方经过缜密的研究认为功能有增有减,总的工作量与原来差别不大,同意了甲方的变更要求并付诸实施。
2014年计算机软件水平考试真题及答案

2014年计算机软件水平考试试题答案+Q[836196494]2014年软考考试试题答案 +Q[836196494]1.下列内容不是项目选择办法的是:A、逻辑框架分析B、分析层次过程C、专家判断D、决策目录结构C2.能够提供每项工作开始早晚和完成日期的进度开发技术是A、SPC分析B、GERTC、CPMD、MONTE CARLO分析C3.快速跟踪的意思的A、缩短关键路径工作周期,目的是缩短项目周期B、通过对各种逻辑关系再行确定来缩短项目周期C、使用最好的资源尽快完成工作D、同其他项目协调好关系以减少行政管理的磨擦B4.下面哪个公式是计算工作周期最精确的公式?A、AD=工作数量/生产效率B、AD=工作数量/资源数量C、AD=生产效率/工作数量D、AD=(生产效率)(工作数量)/资源数量A5.在评估一个项目是否赶工时,项目经理首先计算A、每项关键工作投入的成本和时间的比率B、项目关键路径新增资源的成本C、当关键路径的工作速度加快时,项目整体进度可以节约时间D、每个关键路径PERT三个可能的时间估算A6.项目进度执行的评估和报告的依据是A、进度的基线B、项目进度修改建议的数量C、事件和工作计划与事实的区别D、技术基线A7.项目进度执行指数小于1的意思是A、项目实现的货币价值小于计划完成工作的货币价值B、项目实际完成的有形物品的价值100%按计划完成C、项目实际永久损失了时间D、项目可能不会按时完成,但项目经理也不必为此过于担心A8.里程碑最好被描述成A、相关工作和事件的联合B、通常使用的表示工作或事件的两条或多条线或箭头的交叉C、项目中表示报告要求或重要工作完成的可以辨别的点D、需要资源和时间投入才得以完成的具体的项目任务C9、以下不被用来描述质量审查的是:A、内部的(审查)B、系统的(审查)C、基线(审查)D、预期(审查)D10、如果成本变更与工期变更相同,则A、成本变更因工期变更而起B、变更将对项目有利C、项目变更易纠正D、从项目实施起,劳动效率已提高A11.在从下至上的成本估算中,在什么情况下准确度可以提高?A、如果以前的项目不仅在表面上,而且在实质上与这项项目相似B、如果应用准确的历史信息C、在更小的工作项目上D、如果准备估计工作的个人或集体有完备的素质的话C12.下列哪项不是直接成本?A、项目经理的薪水B、分承包商的费用C、项目使用的材料D、电力D13.以下都属于在质量管理中应用的根本原因分析技术,除了:A、Fishbone图表B、Ishikawa图表C、系统或流程图D、项目审核表D14、在质量规划中,应把质量策略告知关系人,履行告知义务的是:A、组织的最高层B、项目经理C、项目组成员D、职能经理C15、六个∑指的是为平均值的六个标准偏离值设定的公差限度,但是通常可预计的一个流程的偏差是:A、一个标准偏差B、二个标准偏差C、三个标准偏差D、由于各流程的特殊性而无法确定C16、在项目的收尾阶段,最多的矛盾来自于以下哪方面:A、进度问题B、费用超支C、技术问题D、工作界面A17、以下各因素对小组建设影响最小的是:A、对项目概念的错误认识B、高层管理层不支持C、遇到困难的项目D、对项目小组成员的补偿D18、加强小组人员建设的一种方式是项目经理运用针对成员个人的人性化的工作方式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014年下半年软件评测师下午真题(含答案)试题一(共20分)阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。
【C程序】int GetMaxDay( int year, int month){int maxday=0;//1if( month>=1&&month<=12){ //2,3if(month==2){ //4if( year%4==0){ //5if(year%100==0){ //6if( year%400==0) //7maxday= 29; //8else //9maxday= 28;}else //10maxday= 29;}elsemaxday = 28; //11}else{ //12if (month=4||month=6||month=9||month=11) //13, 14,15,16maxday = 30; //17else //18maxday = 31;}}return maxday; //19}【问题1】(6分)请针对上述C程序给出满足100%DC(判定覆盖)所需的逻辑条件。
【问题2】(9分)请画出上述程序的控制流图,并计算其环路复杂度V(G)。
【问题3】(5分)请给出问题2中控制流图的线性无关路径。
参考答案:【问题1】:Month>=1&&month<=12Month==2Year%4==0Year%100==0Year%400==0Month==2Month==4Month==6Month==9Month==11【问题2】:V(G)=11【问题3】:1、21、2、31、2、3、4、12、13、17、191、2、3、4、12、13、14、17、191、2、3、4、12、13、14、15、17、191、2、3、4、12、13、14、15、16、17、191、2、3、4、12、13、14、15、16、18、191、2、3、4、5、11、191、2、3、4、5、6、10、191、2、3、4、5、6、7、9、191、2、3、4、5、6、7、8、19试题分析:判断覆盖:设计足够的测试用例,使得程序中的每个判定至少都获得一次“真值”或“假值”,或者说使得程序中的每一个取“真”分支和取“假”分支至少经历一次,因此判定覆盖又称分支覆盖对于本题中判定的条件有:Month>=1&&month<=12Month==2Year%4==0Year%100==0Year%400==0Month==2Month==4Month==6Month==9Month==11【问题2】控制流图是描述程序控制流的一种图示方法。
其基本符号有圆圈和箭线:圆圈为控制流图中的一个结点,表示一个或多个无分支的语句;带箭头的线段称为边或连接,表示控制流。
基本结构如下所示:控制流程图的环路复杂性V(G)等于:(1)控制流程图中的区域个数。
(2)边数-结点数+2。
(3)判定数+1。
V(G)=11【问题3】线性无关路径是指包括一组以前没有处理的语句或条件的一条路径。
从控制流图来看,一条线性无关路径是至少包含有一条在其他线性无关路径中从未有过的边的路径:1)1、22)1、2、33)1、2、3、4、12、13、17、194)1、2、3、4、12、13、14、17、195)1、2、3、4、12、13、14、15、17、196)1、2、3、4、12、13、14、15、16、17、197)1、2、3、4、12、13、14、15、16、18、198)1、2、3、4、5、11、199)1、2、3、4、5、6、10、1910)1、2、3、4、5、6、7、9、1911)1、2、3、4、5、6、7、8、19试题二(共15分)阅读希埃尔说明,回答问题1至问题3,将解答填入答题纸的对应栏内.【说明】某商店为购买不同数量商品的顾客报出不同的价格,其报价规则如表2-1所示.如买11件需要支付10*30+1*27=327元,买35件需要支付10*30+10*27+10*25+5*22=930元现在该商家开发一个软件,输入为商品数C(1<=C<=100),输出为因付的价钱P【问题一】(6分)请采用等价类划分法为该软件设计测试用例(不考虑C为非整数的情况).【问题二】(6分)请采用边界值分析法为该软件设计测试用例(不考虑健壮性测试,既不考虑C不在1到100之间或者是非整数的情况).【问题三】(3分)列举除了等价类划分法和边界值分析法以外的三种常见的黑盒测试用例测试反法.参考答案:【问题1】:测试用例1:31~100中任意一个数测试用例2:101测试用例3:0测试用例4:1~10中任意一个数测试用例5:11~20中任意一个数测试用例6:21~30中任意一个数【问题2】:0、1、10、11、20、21、30、31、100、101【问题3】:错误推测法、因果图法、判断表法、正交试验法、功能图法、场景法试题分析:【问题1】划分等价类的6条原则:(1)在输入条件规定了取值范围或值的个数的情况下,可以确立一个有效等价类和两个无效等价类(2)在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类(3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类(4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n 个有效等价类和一个无效等价类(5)在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)(6)在确知已划分的等价类中,各元素在程序处理中的方式不同的情况下,则再将该等价类进一步地划分为更小的等价类本题中主要范围限制为1<=C<=100,即可以划分为两个无效和一个有效等价,但由于每一个小的等价类是单独处理的,因此需要再进一步的划分:测试用例1:31~100中任意一个数测试用例2:101测试用例3:0测试用例4:1~10中任意一个数测试用例5:11~20中任意一个数测试用例6:21~30中任意一个数【问题2】边界值设计测试用例,应遵循的原则:1)如果输入条件规定了值得范围,则应取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据2)如果输入条件规定了值得个数,则用最大个数、最小个数、比最小个数少、比最大个数多1的数作为测试数据3)根据规格说明的每个输出条件,使用前面的原则14)根据规格说明的每个输出条件,应用前面的原则25)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构边界上的值作为测试用例7)分析规格说明,找出其他可能的边界条件依据边界值设计测试用例的原则,本题测试用例应选择:0、1、10、11、20、21、30、31、100、101【问题3】黑盒测试的方法有等价类划分、边界值分析、因果图法、判定表法、正交试验法、功能图法、场景法、错误推测法等因此本题可选:错误推测法、因果图法、判断表法、正交试验法、功能图法、场景法中的3种试题三(共20分)阅读下列说明,回答问题l至问题4,将解答填入答题纸的对应栏内。
【说明】某大型披萨加工和销售商为了有效管理披萨的生产和销售情况,欲开发一套基于Web 的信息系统。
其主要功能为销售、生产控制、采购、运送、存储和财务管理等。
系统采用Java EE平台开发,页面中采用表单实现数据的提交与交互,使用图形(Graphics)以提升展示效果。
【问题1】(6分)设计两个表单项输入测试用例,以测试XSS(跨站点脚本)攻击。
系统设计时可以采用哪些技术手段防止此类攻击。
【问题2】(3分)简述图形测试的主要检查点。
【问题3】(5分)简述页面测试的主要方面。
【问题4】(6分)系统实现时,对销售订单的更新所用的SQL语句如下:PreparedStatement pStmt = connection,prepareStatementC(“UPDATE SalesOrder SETstatus=?WHERE OrderID=?;”);然后通过setString(...);的方式设置参数值后加以执行。
设计测试用例以测试SQL注入,并说明该实现是否能防止SQL注入。
参考答案:【问题1】:用例1:< IMG SRC="javascript:alert('XSS');" >;用例2:< IMG SRC="javascrip\r\nt:alert('XSS');" >防御XSS攻击方法:验证所有输入数据,有效检测攻击;对所有输出数据进行适当的编码,以防止任何已成功注入的脚本在浏览器端运行。
防御规则:1.不要在允许位置插入不可信数据2.在向HTML元素内容插入不可信数据前对HTML解码3.在向HTML常见属性插入不可信数据前进行属性解码4.在向HTML JavaScript DATA Values插入不可信数据前,进行JavaScript解码5.在像HTML样式属性插入不可信数据前,进行CSS解码6.在向HTML URL属性插入不可信数据前,进行URL解码【问题2】:图形测试主要检查点:∙颜色饱和度和对比度是否合适∙需要突出的链接的颜色是否容易识别∙是否正确加载所有的图像【问题3】:∙页面的一致性如何∙在每个页面上是否设计友好的用户界面和直观的导航系统∙是否考虑多种浏览器的需要∙是否建立了页面文件的命名体系∙是否充分考虑了合适的页面布局技术,如层叠样式表、表格和帧结构等【问题4】:能防止SQL注入Pstmt.setString('1' or '1' = '1',status)Pstmt.setString('2' or '1' = '1',orderID)试题分析:【问题1】XSS攻击:跨站脚本攻击(Cross Site Scripting)是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。
比如这些代码包括HTML代码和客户端脚本。
用例1:< IMG SRC="javascript:alert('XSS');" >;用例2:< IMG SRC="javascrip\r\nt:alert('XSS');" >防御XSS攻击方法:验证所有输入数据,有效检测攻击;对所有输出数据进行适当的编码,以防止任何已成功注入的脚本在浏览器端运行。