[发明专利]一种基于模型的构件测试用例生成方法有效
申请号: | 201410252163.9 | 申请日: | 2014-06-10 |
公开(公告)号: | CN103995781B | 公开(公告)日: | 2017-08-25 |
发明(设计)人: | 唐龙业 | 申请(专利权)人: | 浪潮通用软件有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 模型 构件 测试 生成 方法 | ||
技术领域
本发明涉及软件测试技术领域,具体地说是一种基于模型的构件(单元)测试用例生成方法。
背景技术
近十几年来,软件规模不断扩大,软件的复杂性不断增加,软件的应用开发环境、开发方式等都在变化如构件技术被广泛使用。在这种“变化”的大背景下,用户对于软件质量的要求也在提高。因此,作为提高软件质量的一种有效手段,软件测试技术也需要适应并不断发展。统计表明:在软件测试开销中,约40%投入到测试数据上,包括测试用例的生成和测试结果的检查。另外,测试过程的自动化程度对于测试的实施效率也有着直接的影响。
随着建模技术(尤其是UML)的应用成熟,基于模型的测试成为在实践中被广泛应用的一种方法。这里的“模型”可以是设计模型,也可以是专门创建的测试模型。在该方法中,基于模型的描述信息(通常包括工作流和数据流信息)产生测试用例数据,并通过执行测试用例以检查/评估测试结果以发现软件中潜在的故障点。
测试用例生成是软件测试工作的基础,无论哪种测试方法都涉及这个问题。目前,虽然已有很多种测试用例生成方法,但是,他们距离实际应用尚有很大距离。这也是目前制约软件测试技术发展的主要因素之一。而国际上一些先进软件测试工具中,通常都回避了测试用例的自动生成问题,或者至多提供一种半自动的测试用例生成方式。因此,国内外从事软件测试的企业中,大多采用人工或者计算机辅助方式生成测试用例,它们的缺点是:
(1)测试用例生成需要花费大量开销(人员、时间等),并且自动化程度和效率低;
(2)软件逻辑的变化不能直接反映到测试用例集的更新上,实现“按需”维护的成本高;
(3)一些生成工具虽然达到了一定程度的自动化,但是实现过于复杂,对于使用者的专业技术要求较高。
近几十年来,随着软件质量问题日益突出,软件测试与维护的成本越来越高,工作量也越来越大。统计表明,在国内外,测试基本上达到软件开发总费用的50% ,有时甚至高达80%以上,而其中相当一部分是人工生成和维护工作的费用。
测试用例的自动生成一直是软件测试技术所追求的目标之一。虽然国内外许多科学家为此付出极大努力,但是,相关研究成果到能够顺畅的实践应用还存有较大距离。另外,随着构件技术的发展,如果能够针对构件版本的变化“按需”生成测试用例,对于提高构件回归测试效率、基于构件的软件系统的质量等都具有十分重要的理论和现实意义。
发明内容
本发明的技术任务是针对上述现有技术的不足,提供一种基于模型的构件测试用例生成方法。该方法能够按照给定的软件设计模型,针对其功能逻辑表达进行语义自动分析,并通过数据对象的模型转换方法生成符合要求的测试用例集合,提高软件测试中测试用例“按需”生成过程的跟踪、回溯能力,可大幅度提高测试用例生成的效率与自动化程度。
该发明旨在通过基于设计模型和数据对象映射实现测试用例生成,
本发明的技术任务是按以下方式实现的:一种基于模型的构件测试用例生成方法,其特点是包括以下步骤:
步骤一:根据选定的UML设计模型,创建能够描述构件功能逻辑(工作流)的XML文档;
步骤二:分析工作流中包含的状态数据及其包含的数据对象,创建数据对象语义描述表,确定数据对象的平台无关语义特征;
步骤三:根据确定的目标平台,分析并明确与目标平台绑定的数据对象的语法特征、语义取值范围及约束;在此基础上创建平台无关到平台相关的数据对象取值映射表;
步骤四:遍历描述构件功能逻辑的XML文档,自动产生对应构件功能逻辑的工作流集合;
步骤五:基于步骤二中创建的数据对象语义描述表,转换并扩展步骤四中生成的工作流集合,生成平台无关测试用例集合;
步骤六:基于步骤三中创建的平台无关到平台相关的数据对象取值映射表,针对步骤五中生成的平台无关测试用例集合进行数据对象的转换,生成与目标平台相关的测试用例集合。
作为优选,步骤一,基于已创建的UML图,手工创建反映构件功能逻辑的XML描述文档:
创建XML 文档时,按照对应UML图中每一项工作流程,采用语义清晰的XML标签进行翻译和描述:采用预定义的标签元素描述模型中的相应元素,包括起始节点、结束节点、中间节点、分支节点、循环节点、汇聚节点及并行节点,并通过Label_Config文档进行记录和语义注释。
所述标签元素可以由用户自行定义和扩展。
所述构件设计模型可以是第三方创建的,或者是用户自己设计的UML图,用以清晰地描述构件的某个剖面的功能逻辑——对应不同的UML图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮通用软件有限公司,未经浪潮通用软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410252163.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种汽车的衣帽钩组件以及汽车
- 下一篇:一种增程式电动车的放电控制的方法