首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通
admin
2016-11-11
70
问题
阅读以下关于某嵌入式系统多路数据采集的说明,回答问题1至问题3,将解答填入答题纸的对应栏内。
【说明】
某嵌入式系统中,存在16路数据采集通道,为了提高数据采集的可靠性,对16路采集通道均采用双余度设计,为了监控采集通道是否发生故障,对各路双余度通道采集值进行比较,只有当该通道两个余度设备采集值均不小于45时,才表示该路通道正常。设计人员设计函数num of passer用于统计无故障通道数目,在该函数的设计中考虑了如下因素:
(1)采用如下数据结构存储通道号及采集值:
Struct value
{unsigned int No; //通道号,1到16
unsigned short Value1; //余度1采集值
unsigned short Value2; //余度2采集值
}
(2)当输入参数异常时,函数返回-1;
(3)若正确统计了无故障通道数目,则返回该数目;
(4)该函数需要两个输入参数,第一个参数是用于存储通道号及余度采集值的数组,第二个参数为通道总数目。
开发人员根据上述要求使用ANSI C对代码实现如下(代码中第一个数字代表行号):
1)unsigned int num_of_passer(struct value array[],unsigned int num)
{
2) unsigned int n=0; //循环变量
3) unsigned int counter; //无故障通道数目
4) if((array==NULL)||(num==0)||(num>16))
5) return-i; //当输入参数异常时,函数返回-1
6) for in=0; n<=num; n++)
{
7) if((array[n].Value1>45)&&((array[n].Value2>45)))
8) counter=counter+1;
}
9) return counter;
}
【问题3】
覆盖率是度量测试完整性的一个手段,也是度量测试有效性的一个手段。在嵌入式软件白盒测试过程中,通常以语句覆盖率、分支覆盖率和MC/DC覆盖率作为度量指标,请指出对函数num_of_passer达到100%语句覆盖、100%分支(DC)覆盖和100%MC/DC覆盖所需的最少测试用例数目。
选项
答案
[*]
解析
覆盖率是度量测试完整性的一个手段,也是度量测试有效性的一个手段。在嵌入式软件白盒测试过程中,通常以语句覆盖率、分支覆盖率和MC/DC覆盖率作为度量指标。语句覆盖率指程序中每条可执行语句至少被执行一次。分支覆盖指程序中每个判定取所有可能值至少一次。MC/DC覆盖率指在一个程序中每一种输入输出至少应出现一次,在程序中的每一个条件必须产生所有可能的输出结果至少一次,并且每个判定中的每个条件必须能够独立影响一个判定的输出,即在其他条件不变的前提下仅改变这个条件的值,而使判定结果改变。对函数num_of_passer来说,为了使其中所有的语句至少执行一次,程序中的两种返回值必须各覆盖一次,所以为达到100%语句覆盖率,至少需要两个测试用例,即参数异常的测试用例和参数正常的测试用例。
函数num_of_passer在第4行和第7行有两处条件判断,为了使程序中每个判定取所有可能值至少一次,第4行需要取TRUE和FALSE,第7行需要取TRUE和FALSE。由于第4行取FALSE时,就能覆盖到第7行判定,同时又由于第7行的判定在一个大于一次的循环中,一个测试用例就可以覆盖到第7行的TRUE和FALSE,所以函数num_of_passer 100%的分支覆盖也最少两个测试用例就可以满足,即一个第4行取TRUE的测试用例和一个第4行取FALSE、第7行取TRUE和FALSE的测试用例即可,由于第7行的条件判断在多次循环中,取TRUE和FALSE的测试用例也比较好构造。函数。num_of_passer的组合条件也出现在第4:行和第7行。对第4行的组合条件需要4个测试用例来满足MC/DC覆盖,分别为①参数array为NULL,②array不为NULL且num为0,③array不为NULL且num为大于16的值,④array不为NULL且num为1到16之间的值。对第7行的组合条件需要3个测试用例来满足MC/DC覆盖,分别为①Value1>45且Value2>45,②Value1>45且Value2<=45,⑨Value1<=45且Value2为任意值。由于取第4行array不为NULL且num为1到16之间值的测试用例时,程序将执行到第7行,这时由于第7行在一个多次循环中,第7行需要的3个测试用例都可以在此用例中进行覆盖,所以最少需要4个测试用例就可以使函数num_of_passer满足100%的MC/DC覆盖。
转载请注明原文地址:https://kaotiyun.com/show/DQWZ777K
本试题收录于:
嵌入式系统设计师下午应用技术考试题库软考中级分类
0
嵌入式系统设计师下午应用技术考试
软考中级
相关试题推荐
(68)________________不是分布式数据库管理系统应该遵循的准则。
下列描述的因素中,不属于数据库物理设计应该考虑的是(64)________________。
数据库的并发操作可能带来的问题包括(51)________________。
某本科髙校新建教务管理系统,支撑各学院正常的教学教务管理工作。经过初步分析,系统中包含的实体有学院、教师、学生、课程等。考虑需要将本科学生的考试成绩及时通报给学生家长,新增家长实体;考虑到夜大、网络教育学生管理方式的不同,需要额外的管理数据,新增进修学
某企业人事管理系统中有如下关系模式,员工表Emp(eno,ename,age,sal,dname),属性分别表示员工号、员工姓名、年龄、工资和部门名称;部门表Dept(dnatne,phone),属性分别表示部门名称和联系电话。需要查询其它部门比销
并发操作可能带来的数据不一致性有(52),解决的办法是并发控制,主要技术是(53)。(52)
B-树是一种平衡的多路查找树。以下关于B-树的叙述中,正确的是()。
某系统中有一个缓冲区,进程P1不断地生产产品送入缓冲区,进程P2不断地从缓冲区中取出产品消费,用P、V操作实现进程间的同步模型如下图所示。假设信号量S1的初值为1,信号量S2的初值为0,那么a、b、c处应分别填()。
设备驱动程序是直接与()打交道的软件模块。
函数调用和返回控制是用()实现的。
随机试题
不安抗辩权的效力是指先履行一方当事人有权()
患者,女,33岁。近1~2年来自觉全口多数牙齿松动,咀嚼力量减弱。若诊断为快速进展型牙周炎,临床检查最有可能的发现是
A.热结肠胃B.肝脾气郁C.津亏血燥D.阳虚寒凝E.湿热中阻某患者,症见大便秘结,欲便不得,嗳气频作,胸胁痞满。应辨证为
设备安装标高测量时,测点的绝对标高是指测点相对于()的高程。
某合伙企业由于经营不善,无力偿还对外所欠的应付货款。下列有关债务清偿的说法中,不符合法律规定的是()。
罗杰斯的“以学生为中心”、“让学生自发学习”、“排除对学习者自身的威胁”的教学原则属于()。
参观教学法可分为()。
已知椭圆C:(a>b>0),F为其左焦点,离心率为e.若过点A(0,4)的直线与椭圆C相切于M,交x轴于,求证:μ+e2=0.
对于循环队列,下列叙述中正确的是()。
Ifyoudon’tmind(wait)______forafewminutes,wecancheckourrecordsforyou.
最新回复
(
0
)