基于动态行为模型的构件及组装测试的分析-analysis of component and assembly test based on dynamic behavior model.docx

基于动态行为模型的构件及组装测试的分析-analysis of component and assembly test based on dynamic behavior model.docx

基于动态行为模型的构件及组装测试的分析-analysis of component and assembly test based on dynamic behavior model

摘要构件组装是基于构件软件开发的核心技术,构件必须通过组装才能构造新的应用系统。而 为了使组装成为可能,一个构件必须依附于一种特定的构件模型。但目前占主流的构件实现模 型一般没有对构件的动态行为进行描述,也缺少组装理论来验证构件组装的正确性。因此,在 验证所使用的构件和其组装是否真正满足用户要求时往往会遇到很多困难。本文用接口自动机 来描述构件的动态行为,借助其形式化的语义对构件的行为和构件组装进行验证和测试,主要 工作包括以下几部分:1.提出了一种从 UML 状态图转换为接口自动机模型的方法,并对接口自动机模型的测试 问题进行了研究。构件的行为模型有多种不同的描述方式,当构件模型的类型不一致时要准确 地完成组装工作往往非常困难。接口自动机是描述开放系统中构件行为的形式化模型,但如何 提取构件行为建立该模型,没有统一的准则;UML 是广泛应用的建模标准,但缺少精确的语义 使得其难以直接应用于系统的验证与测试。通过对二者表达能力的分析,定义了一组转换规则 并对转换过程进行了详细说明,从而为基于接口自动机模型的研究奠定了基础。文中进一步研 究了接口自动机模型的测试问题,通过为模型中每一个状态和迁移生成测试用例,为应用接口 自动机模型提供了正确性的保证。2.基于构件的动态行为模型提出了简单运行覆盖的测试准则,并以此为基础介绍了一种生 成构件运行场景的方法。在验证构件的功能时需要对其行为模型进行仔细的分析,但使用者常 常会因为不具备特定模型的知识,而不能对其进行系统的验证。另外,除了构件的实现细节外, 用户往往更关心与目标系统功能相关的构件行为,特别是可以直观的与其需求相对应的行为, 但却常常难以获取。文中所提出的方法能够对构件的整体行为进行验证,并可进一步生成能够 覆盖构件功能的最小测试用例集,从而能够有效地验证构件是否满足用户要求。3.提出了一种通过测试用例集的组合进行构件组装测试的方法。构件组装测试多是借助构 件模型的组合来实现,若构件由不同的模型描述,则进行有效和系统的组装测试就会非常困难; 另一方面模型组合容易产生状态空间的爆炸问题,而且常常会重复单元测试时的工作。在基于 构件的软件开发中,不仅构件可以复用,构件的测试用例集也存在可复用的性质。文中首先从 理论上分析了测试用例组合的可行性和有效性,然后对该方法进行了详细的说明并对其在构件 组装过程中的应用进行了介绍,最后的实例验证和结果分析都说明了所提出方法的实用性,从 而为构件的组装测试和传统的软件集成测试提供了一种新的思路。该方法计算过程比较简单, 可以满足规定的测试准则且具有一定的通用性。4.为了充分发挥测试在基于构件软件开发中的作用,提出了一种测试驱动的基于构件软件 开发模型和测试驱动的构件组装过程。文中分析了测试驱动开发的思想如何应用于构件的组装过程,说明了不同组装方式下生成组装测试用例的方法,然后对测试驱动的构件组装过程进行 了详细的描述。所提出的方法使得构件组装过程中的每一步工作都有可以检验的依据,从而可 以降低开发过程中的风险,有利于获得高质量的软件系统。此外,文章对构件组装测试的原型 工具进行了初步的设计。关键词:基于构件的软件开发,构件测试,模型转换,模型测试,测试准则,测试用例组合, 开发模型AbstractComposition technology is the key factor of component-based software development (CBSD) for assembling existing components to construct a software system. A component has to be built upon a special model for the possibility of correct composition. Nevertheless, the dominant implementation models usually omit the specification of component dynamic behavior and lack the theory to validate the correctness of component composition, which bring great challenges to component users when they validate if the component and composition results are consistent with their requirements. In this paper the interface automata is used to model t

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档