阅读下列说明,回答问题,将解答填入对应栏内。 【说明】 某飞行器供油阀控制软件通过控制左右两边的油箱BL、BR向左右发动机EL、ER供油,既要保证飞行器的正常飞行,又要保证飞行器的平衡,该软件主要完成的功能如下: (1)无故障情况下,控制左油箱BL

admin2018-11-21  21

问题 阅读下列说明,回答问题,将解答填入对应栏内。
【说明】
某飞行器供油阀控制软件通过控制左右两边的油箱BL、BR向左右发动机EL、ER供油,既要保证飞行器的正常飞行,又要保证飞行器的平衡,该软件主要完成的功能如下:
    (1)无故障情况下,控制左油箱BL向左发动机EL供油,右油箱BR向右发动机ER供油,不上报故障;
    (2)当左油箱BL故障时,控制右油箱BR分别向左、右发动机EL和ER供油,并上报二级故障——左油箱故障;
    (3)当右油箱BR故障时,控制左油箱BL分别向左、右发动机EL和ER供油,并上报二级故障——右油箱故障;
    (4)当左发动机EL故障时,根据左右油箱的剩油量决定(如果左右油箱剩油量之差大于等于50升,则使用剩油量多的油箱供油,否则同侧优先供油)左油箱BL还是右油箱BR向右发动机ER供油,并上报一级故障——左发动机故障;
    (5)当右发动机ER故障时,根据左右油箱的剩油量决定(如果左右油箱剩油量之差大于等于50升,则使用剩油量多的油箱供油,否则同侧优先供油)左油箱BL还是右油箱BR向左发动机EL供油,并上报一级故障——右发动机故障;
    (6)当一个油箱和一个发动机同时故障时,则无故障的油箱为无故障发动机供油,并上报一级故障——故障油箱和发动机所处位置;
    (7)当两个油箱或两个发动机同时故障或存在更多故障时,则应进行双发断油控制,并上报特级故障——两侧油箱或两侧发动机故障;
    (8)故障级别从低到高依次为二级故障、一级故障和特级故障,如果低级故障和高级故障同时发生,则只上报最高级别故障。
覆盖率是度量测试完整性的一个手段,也是度量测试有效性的一个手段。在嵌入式软件白盒测试过程中,通常以语句覆盖率、分支覆盖率和MC/DC覆盖率作为度量指标。
在实现第6条功能时,设计人员对部分功能采用了下列算法:
if((BL=故障)&&(EL==故障))
{BR供油ER;BL断油;EL断油;}
请指出对上述算法达到100%语句覆盖、100%分支(DC)覆盖和100%MC/DC覆盖所需的最少测试用例数目。请完成表3-1中的(1)~(3)填空,并将答案填写在对应栏中。

选项

答案(1)1 (2)2 (3)3

解析 本问题主要考查对语句覆盖、条件覆盖和MC/DC覆盖概念的掌握以及应用。
    语句覆盖要求设计适当数量的测试用例,运行被测程序,使得程序中每一条语句至少被运行一遍,语句覆盖在测试中主要发现错误语句。
    分支覆盖要求设计适当数量的测试用例,运行被测程序,使得程序中每个真值分支和假值分支至少执行一次,分支覆盖也称判定覆盖。
    修正判定条件覆盖(MC/DC)要求设计适当数量的测试用例,保证在一个程序中每一种输入输出至少得出现一次,在程序中的每一个条件必须产生所有可能的输出结果至少一次,并且每个判断中的每个条件必须能够独立影响一个判断的输出,即在其他条件不变的前提下仅改变这个条件的值,而使判断结果改变。
    按照上述MC/DC覆盖要求,即每个判断中的每个条件必须能够独立影响一个判断的输出。对题中的一个判断进行分析,此判断有两个条件,两个条件共有四种组合,即TT(TRUE和TRUE)、TF(TRUE和FALSE)、FT(FALSE和TRUE)和FF(FALSE和FALSE)。但是由于此判断为逻辑与条件,当前一个条件为FALSE时,其整个判断值为FALSE,后一个条件的真或假均不能独立影响整个判断的输出,所以只需要TT、TF和FX(X表示后一个条件为TRUE或FALSE都可以)三种情况就可以,故此判断最少需要3个测试用例即可满足MC/DC覆盖要求。
转载请注明原文地址:https://kaotiyun.com/show/OQWZ777K
0

相关试题推荐
随机试题
最新回复(0)