希赛网为大家整理了2016年下半年软件评测师考试真题(下午题),供大家参考学习。
试题一(共15分)
阅读下列C程序,回答问题1至问题3,将解答填入答题纸的对应栏内。
【C程序】
int count(int x,int z){
int y=0;
while(x0){//l
if(x:=1)//2
y=7//3
else{//4
Y=x+z+4;
If(y=7||y=21)//5,6
x=1;//7
}
X--;//8
}
return y;//9
}
【问题1】(3分)
请针对上述C程序给出满足1006%DC(判定覆盖)所需的逻辑条件。
【问题2】(7分)
请画出上述程序的控制流图,并计算其控制流图的环路复杂度V(G)。
【问题3】(5分)
请给出问题2中控制流图的线性无关路径。
试题二(共20分)
阅读下列说明,回答问题1和问题2,将解答填入答题纸的对应栏内。
【说明】
某航空公司的会员卡分为普卡、银卡、金卡和白金卡4个级别,会员每次搭乘该航空公司航班均可能获得积分,积分规则如表2-1所示。此外,银卡及以上级别会员有额外积分奖励,奖励规则如表2-2所示。
表2-1积分规则
表2-2额外积分奖励规则
公司开发了一个程序来计算会员每次搭乘航班历累积的积分,程序的输入包括会员级别B、舱位代码C和飞行公里数K,程序的输出为本次积分S。其中,B和C为字母且大小写不敏感,K为正整数,S为整数(小数部分四舍五入)。
【问题1】(7分)
采用等价类型划分法对该程序进行测试,等价类表如2-3所示,请补充空(1)-(7)
【问题2】(13分)
根据以上等价类表设计的测试用例如表2-4所示,请补充空(1)~(13)。
试题三(共20分)
阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】
某证券交易所为了方便提供证券交易服务,欲开发一个基于Web的证券交易平台。其主要功能包括客户开户,记录查询、存取款、股票交易等。客户信息包括姓名、Email(必填且唯一)、地址等;股票交易信息包括股票代码(6位数字编码的字符串)、交易数量(1 00的整数倍)、买/卖价格(单位:元,精确到分)系统要支持:
(1)在特定时朝内3 000个用户并发时,主要功能的处理能力至少要达到1 28个请求/秒,平均数据量2KB/请求;
(2)页面中采用表单实现客户信息、交易信息等的提交与交互,系统前端采用HTML5实现。
【问题1】(4分)
在对此平台进行非功能测试时,需要测试哪些方面?
【问题2】(5分)
在满足系统要支持的(1)时,计算系统的通信吞吐量。
【问题3】(3分)
表单输入测试需要测试哪几个方面?
【问题4】(8分)
(1)针对股票代码:111111,数量:1 0万,当前价格:6.00,设计4个股票交易的测试输入。
(2)设计2个客户开户的测试输入,以测试是否存在XSS、SQL注入。
试题四(共20分)
阅读下列说明,回答问题1至问题5,将解答写在答题纸的对应栏内。
【说明】
图4-1是银行卡应用的部分类图,图中属性和操作前的“+”和“一”分别表示公有成员和私有成员。银行卡Account有两种类型,借记卡SavingAccount和信用卡CreditAccount。
图4-1银行卡应用的部分类图
(1)借记卡和信用卡都有卡号account Number和余额balance两个属性。借记卡的余额是正常余额,信用卡的余额是目前未还的金额,如果没有未还的金额,则为0;有开户set Up、取款withdraw、查询余额get Balance和销户close四个方法。借记卡取钱时,要求取钱金额不能超过余额;而信用卡取钱金额不能超过信用额度,因此需要在子类中实现该方法。
(2)借记卡可以存钱deposit。
(3)信用卡有信用额度creditLimit属性,可以查询信用额度getCreditLknit、修改信用额度updateCreditLimit和还款retumCredit。现拟采用面向对象的方法进行测试。
【问题1】(3分)
面向对象单元测试的主要对象是什么?
【问题2】(4分)
在继承关系上,若某方法在测试父类时已经测试过,那么在什么情况下在子类中也需要测试?
【问题3】(4分)
要测试方法deposit0时,还需要调用什么方法?给出测试序列。
【问题4】(6分)
方法withdraw在基类Account中定义,但在两个子类中有不同的实现。这是面向对象的什么机制?这种情况在测试时如何进行?
【问题5】(3分)
给出类SavingAccount的最小测试序列。
试题五(共,20分)
阅读下列说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某嵌入式控劁软件通过采集传感器数值来计算输出控制率,为了提高数据采集的可靠性,使用三余度采集方法进行三个通道的数据采集。
1.三余度通道数据采集及处理要求:
(1)三通道采集值In_U[O]、h_U[1]、In_U[2]的正常范围为[-3.0,3.0]V,且任意两通道间差值不大于0.5V;
(2)如果某通道采集值超过正常范围或者因为通道采集值造成与其它通道差值大于0.5V,则该通道数据不满足要求;
(3)如果三通道值均满足要求,则取三通道中差值较小的两通道数据的平均值;
(4)如果仅有一个通道数据不满足采集要求,取满足要求的两个通道数据的平均值;
(5)如果多于一个通道数据不满足采集要求,取安全值0V。
2.对采集数值计算控制率的具体处理算法如下:
(1)如果依据采集数据计算的控制率C1与目前实际控制率C0差值不大于0.01则使用本周期计算控制率C1进行输出控制,否则使用目前实际控制率C0输出控制上报传感器故障;
(2)如果连续3个周期计算的控制率C1与目前实际控制率C0差值大于0.01,
上报传感器三级故障,连续超差计数清零,使用目前实际控制率C0输出控制;如果经连续3个周期控制率超差,并上报三级故障,但第4个周期计算的控制率C1与实际控制率C0差值不大于0.01,则清除三级故障上报;
(3)如果累计大于等于10个周期计算的控制率C1与目前实际控制率C0差值二0.01,则上报传感器二级故障,使用目前实际控制率输出控制;
(4)如果累计大于等于100个周期计算的控制率∞与目前实际控制率C0差{
于0.01,则上报传感器一级故障,并清除二级故障,并切断输出控制(输出安全值)
(5)如果低级故障和高级故障同时发生,则按高级故障处理。
【问题1】(9分)
为了测试采集算法,在不考虑测量误差的情况下,设计了表5-1所示的测试用例请填写该表中的空(1)~(6)。
【问题2】(9分)
为了测试控制率计算算法,在不考虑测量误差的情况下,设计了表5-2所示的钡用例,请完善其中的空(l)~(6)。
【问题3】(2分)
测试人员在设计测试用例进行采集算法测试时,发现本项目的三余度采集值的具体处理算法存在l处缺陷,请指出此处缺陷。
2016年下半年软件评测师考试下午真题答案与解析