问答题 下面是关于嵌入式软件测试方面的叙述,回答问题1和问题2,将解答填入答题纸的对应栏内。
[说明]
甲公司是一个专业的软件测评中心,承担了某机载软件测试任务。王工是该测试任务的负责人。用户指出,被测件是控制飞机飞行的关键软件,其安全性要求很高,必须按有关规定开展测评工作。
问答题 [问题1]
王工与被测方讨论被测件的测试计划时,在测试环境方面产生了分歧。王工认为:由于当前被测件的实验平台要用于系统联试,没有时间提供给测评工作,测评工作司?在仿真环境下进行,没有必要非得在目标机环境下测试;而被测方认为:软件测评工作仅仅用仿真环境是不够的,不能真实反映软件特性,可根据需要安排在实验平台上进行。
请对双方的意见进行分析,回答①~④问题:
王工和被测方的意见 __①__
①A.都对
B.王工正确而被测方不完全正确
C.都不完全正确
D.被测方正确而王工不完全正确
你对有关测试环境的建议如下(请将建议填入答题纸的对应栏内):
1. _______________________________②____________________________________
2. _______________________________③____________________________________
3. _______________________________④____________________________________
【正确答案】
【答案解析】[问题1]
①C
②要在目标机环境下进行软件测试
③采用在目标机环境下和在仿真环境下相结合的方法
④妥善安排目标机环境的使用,使甲方的开发与乙方的测试两不误 [解析] 本题考查嵌入式软件测试方面的基本知识和实际分析问题,解决问题的能力。
[问题1]
在软件测试,尤其是嵌入式软件测试中,用仿真环境虽然可以完成部分测试工作,如单元测试,但是这些测试工作只能认为是编写测试用例的工作,为了确保软件与硬件的配套性,必须将测试用例在实际目标机上运行,因此,A、B、D三种说法都不正确, C是正确的选项。由于嵌入式系统的特殊性,本题主要考查考生对嵌入式软件测试工作的要求理解程度。
在了解嵌入式系统特性的基础上,应能给出以下建议:
第一条“要在目标机环境下进行软件测试”,这是嵌入式系统必须遵循原则;
第二条“采用在目标机环境下和在仿真环境下相结合的方法”,这是一种并行工作的有效方式;
第三条“妥善安排目标机环境的使用,使甲方的开发与乙方的测试两不误”,类似于第二条,只是提醒项目开发方在必要的时刻应安排目标机环境给测试方使用。
问答题 [问题2]
仔细阅读以下有关修正的条件判定覆盖(MC/DC)和条件判定覆盖(C/DC)的叙述,回答①~④问题。
由于被测件是关键级软件,按有关规定,被测件的测试必须达到MC/DC。MC/DC要求测试集满足 __①__ 条件;C/DC要求测试集满足 __②__ 条件。下图所示的例子中给出了两个判定条件的例子,则满足MC/DC要求的测试集是{ __③__ },满足C/DC要求的测试集是{ __④__ }。
【正确答案】
【答案解析】[问题2]
①首先应满足C/DC的测试条件;判定中每个条件的取值都必须独立地影响判定的结果,即在其他条件取值不变的前提下,仅改变这个条件的值,而使判定结果改变。
②判定中每个条件的真值与假值都至少取一次;同时判定的真值与假值也要求至少取一次。
③FF,TF,FT
④TT,FF [解析]
[问题2]
根据宇航系统的软件安全性考虑要求,宇航系统将根据设备对飞行器安全性影响危害程度将软件分为5级(A~E),其中A级软件是关键软件,在软件测试中必须达到 100%修正的条件判定覆盖(MC/DC)和条件判定覆盖(C/DC)。这里主要考查考生是否理解这两种测试要求的具体含义。
MC/DC要求测试集条件是:首先应满足C/DC的测试条件;判定中每个条件的取值都必须独立地影响判定的结果,即在其他条件取值不变的前提下,仅改变这个条件的值,而使判定结果改变。因此,对所列的A、B两个条件变量,{PF,TF,FT}集合就满足了MC/DC要求。
C/DC要求测试集条件是:判定中每个条件的真值与假值都至少取一次;同时判定的真值与假值也要求至少取一次。因此,对所列的A、B两个条件变量,{TT,FP}集合就满足了C/DC要求。