模型驱动软件测试若干研究

来源 :南京大学 | 被引量 : 0次 | 上传用户:hacker01
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
计算机作为科学与技术高速发展的一个重要标志,已经普及和渗透到人们工作和生活的各个方面。人们越来越不能忍受计算机系统故障所造成的损失。软件是计算机系统的核心,由于软件缺陷而导致的系统故障占相当大的比例,所以提高软件质量是软件行业最根本也是最迫切的需求。测试作为提高软件质量的一个重要手段一直受到学术界与工业界的重视。 随着软件的规模和复杂性的不断增长,测试工作量和成本也在不断增长,这导致工业界迫切需要采用兼顾效率与成本的测试方法。软件开发方法与软件测试方法是紧密相连、相辅相成的。随着软件开发方法完成从传统的结构化方法到面向对象方法的演变,以及近年来受到广泛关注的模型驱动的软件体系结构MDA(Model DrivenArchitecture)的提出,使得软件测试方法的研究与实践不断地面临新的问题和挑战。 近年来国际标准化组织OMG(Object Management Group)陆续提出了统一的建模语言UML(Unified Modeling Language)、模型驱动的体系结构,使得模型驱动的软件工程(Model Driven Engineering,MDE)成为软件工程发展的一个新的方向。UML作为标准建模语言,近年来被学术界和工业界广泛地用于软件系统建模。MDA在软件开发全生存期通过建模和模型转换获得软件开发过程中各个层次的模型,包括分析模型、设计模型、实现模型等。所有这些模型都是通过UML及其平台相关的profile表示的。 当建模成为软件开发的基本活动、UML模型成为普遍的软件工件(artifact)时,如何将这些模型应用于测试过程,是摆在测试研究人员面前、迫切需要解决的问题之一。从测试角度看,这些模型是获取系统结构和行为信息的来源,因而是测试生成的理想基础,用这些模型驱动测试过程是很自然的想法,使得测试工作可以尽早开始,及时发现和排除软件开发过程中引入的缺陷。这种模型驱动的测试方法的研究正在不断发展,但目前还没有标准的或者是普遍接受的方法。 本文主要从过程、方法与工具三个方面研究了模型驱动的软件测试方法学,主要的工作包括以下几个方面。 1.本文提出了一个与模型驱动的软件开发过程无缝集成的模型驱动的软件测试过程。该过程有利于合理组织测试资源,加强过程的控制与改进,从而能够提高测试的效率和软件的质量。 2.本文扩展了传统测试中的覆盖准则,提出并实现了一个针对UML动态模型的覆盖准则,及满足上述覆盖准则的测试用例生成方法。该方法将系统的顺序图、协作图和活动图作为系统的预期行为模型,首先基于灰盒方法生成满足预期行为模型上相应基础路径覆盖准则的测试场景,然后分别分析作为测试场景的事件序列、消息序列或活动与转移序列,获取数据流,用范畴-划分方法结合随机方法生成测试用例。 3.本文提出并实现了一种以模型转换技术为基础的,将平台无关的测试用例自动转换为平台相关的测试用例的方法。在模型驱动的软件开发的基础上,该方法基于用UML表示的PIM(Platforlm Independent Model)到用UML profile for EJB表示的J2EE平台上的PSM(Platform Specific Model)的转换规则,实现了将根据PIM生成的PIT(Platform Indeoendent Testing)自动映射到PST(Platform Specific Testing)的转换。 4.本文提出并实现了一种以UML顺序图作为场景规约的自动测试执行技术。该方法实现了随机测试用例自动生成、满足顺序图规约的预期事件关系图的自动生成、源代码自动插装、自动测试执行、测试数据自动收集、测试结果自动比较。 5.最后,基于上述研究工作,我们实现了一个模型驱动的测试环境MDSTE对上述方法提供自动化支持。我们选用UML描述MDSTE的的分析、设计模型,并用C++和Java实现了系统。
其他文献
油藏剖面图是油田生产开发中常用的图件,本文根据油田开发工作中实际情况,依据中石化集团公司开发的“油田开发综合业务信息系统”中的油藏剖面图模块提出了基于分布式数据库的
数据仓库及数据挖掘技术与3S技术相结合,导致了空间数据仓库及空间数据挖掘技术的产生与发展。空间数据仓库能集成、存储来自不同数据源包括不同数据类型的空间数据,能从多角度
本文以ETO类型企业产品为对象,以事前成本规划为宗旨,以实现产品目标成本为目的,分析产品成本在全生命周期各个阶段的动因特点,采用从宏观控制到微观控制的方式以及目标控制
随着软件技术的飞速发展以及软件项目规模的急剧增大,过去十年对软件开发过程的改进与提高受到明显的重视。需求工程是整个软件过程的第一个,同时也是最为重要的一个阶段。提高
网格计算系统就是将地理分布、系统异构、性能各异的各种资源,包括超级计算机、大规模存储系统、个人计算机、各种设备等组织在一个统一的框架下通过高速互连网络连接集成起
现在,国内交通基础设施正值高速建设期,网络基础设施也有了广泛的普及,优质、高效的工程目标要求有规范化、自动化和实时化的项目管理。如何将工程建设所遵循的合同制度、质量标
本文首先对群件系统及其基本结构进行了简介,之后阐述了工作流技术的原理和工作流模型,并对工作流技术在办公自动化系统中的应用进行了讨论。介绍了群件系统LotusDomino/Notes
本文结合当今流行的分布对象技术,提出一个能够比较全面地刻画基于集群的并行系统特征的并行计算模型DOBPCM(Distributed Object Based Parallel Computing Model)。该模型使
VPN涉及的技术包括:安全隧道技术,用户认证技术,访问控制技术,加解密技术等.其中最核心的技术是安全隧道技术,目前普遍使用的是利用IPSec协议实现的安全隧道技术.本文首先介
本文针对房屋中介业务的需求,并根据GIS领域的发展现状和趋势,将GIS技术引入房屋中介业务,设计与实现了基于GIS的房屋中介系统,以取代当前房屋中介行业现有的MIS系统,使房屋中介公