论文部分内容阅读
随着嵌入式技术的发展,嵌入式构件技术开始成为人们关注的热点。嵌入式构件的测试,特别是嵌入式实时构件的测试,成为保障基于构件的嵌入式实时软件质量的重要环节。对嵌入式实时构件进行充分的功能性和实时性测试,才能选择安全可靠的嵌入式实时构件进行嵌入式实时软件的组装。目前,对基于构件的嵌入式实时软件的测试还存在着嵌入式实时构件接口定义不规范、对时间约束的测试困难等问题。国内外对于普通软件构件的接口定义已经取得了一系列的成果,并广泛的运用到软件开发过程中,如COM、CORBA、EJB等构件模型都提出了构件接口的定义,但针对嵌入式实时构件的接口定义还需要完善对时间约束的描述,缺乏统一的规范。同时,嵌入式实时构件的时间约束的测试,需要构造构件间交互动作的时间相关模型才能有效的完成测试。因此,研究如何规范嵌入式实时构件的接口定义,并构造测试模型进行测试,以完成基于构件的嵌入式实时软件的组装,具有十分重要的意义。本文通过对构件技术、时间自动机理论的学习,在已有研究成果的基础上,提出了一种针对基于构件的嵌入式实时软件的测试方法,主要进行以下几个方面的探讨和研究:第一,提出了一种嵌入式实时构件接口定义方法,将嵌入式实时构件分为嵌入式实时功能构件和嵌入式实时调度构件进行接口的定义,以满足嵌入式实时构件的交互。第二,针对嵌入式实时构件交互过程中存在的时间约束,本文在时间自动机理论的基础上提出了一种基于构件的嵌入式实时软件时间自动机模型构造方法-BERSTA,通过CBERSTA模型能够实现对嵌入式实时构件交互过程中的状态转移和时间约束的描述。第三,为了简化CBERSTA模型,本文通过符号状态拆分算法,对构造的CBERSTA模型进行状态空间拆分。在此基础上,将拆分后的CBERSTA模型中的抽象时间延迟替换成时间变量,并在状态转移动作中添加时间变量来完成测试用例的生成。最后,为了验证本文提出的CBERSTA模型的可行性和有效性,本文利用构造的CBERSTA模型生成测试用例,并通过测试算法最终完成软件测试和测试结果分析。