一种基于uml图形对软件进行自动化测试的装置及方法

文档序号:6352651阅读:348来源:国知局
专利名称:一种基于uml图形对软件进行自动化测试的装置及方法
技术领域
本发明涉及计算机自动化测试技术领域,特别是涉及一种基于统一建模语言 (Unified Modeling Language, UML)图形对软件进行自动化测试的装置及方法。
背景技术
软件测试作为保证软件质量和企业生产安全的关键技术,正日益受到广泛的重 视。单纯依靠手工测试已难以满足客户对软件质量不断提高的要求,业界已经在不断研究 采用自动化测试手段来提高测试效率、缩短测试时间及节省人力成本。但是,在自动化测试 中编写自动化测试脚本是必不可少的工作,随着软件的不断升级,测试人员就需要不停地 去重新录制和修改脚本,使得自动化测试过程效率低下,并直接导致测试时间的增加。而 且,编写脚本编写的质量也直接影响到软件的测试效果,测试脚本编写不好将导致软件测 试不全面、不能有效发掘出软件中存在的缺陷,进而影响软件的质量,甚至影响企业生产运 行的稳定性。因此,研究和实现测试脚本的自动生成,提高软件测试效率和提高软件的质量,从 而实现系统稳定性等一直的人们在不断研究的问题。

发明内容
(一 )要解决的技术问题本发明为了解决目前在自动化测试时需要频繁的重新录制和修改测试脚本进而 导致测试效率低下、准确性和覆盖率低下的问题,提供了一种基于UML图形对软件进行自 动化测试的装置及方法。( 二 )技术方案为达到上述目的,本发明提供了一种基于UML图形对软件进行自动化测试的装 置,该装置包括依次连接的UML图形读取装置1、UML图形分析装置2、测试路径分析装置3、 测试路径选择装置4、测试脚本生成装置5、数据管理装置6和自动化测试工具7,该装置通 过对UML图形进行分析,根据UML图形的内容生成测试脚本,实现对软件的自动化测试。上述方案中,所述UML图形读取装置1用于从UML图形文件中读取UML图形的节 点信息,并将读取的UML图形的节点信息发送给UML图形分析装置2。上述方案中,所述UML图形读取装置1从UML图形文件中读取UML图形的节点信 息,是从UML图形文件中读取UML图形中涉及的节点名称、节点类型、节点权重和节点备注消息。上述方案中,所述UML图形分析装置2用于根据UML图形读取装置读取的节点信 息,分析出图形中各节点间的关系,并将该节点及节点间关系信息发送给测试路径分析装置3。上述方案中,所述测试路径分析装置3用于通过深度或者广度优先的遍历算法, 将UML图形分析装置2解析的信息转化成各测试路径,并存储。
上述方案中,所述测试路径选择装置4用于计算测试路径分析装置3产生的各种 测试路径的优先等级,并根据用户事先定义的优先级筛选出相关的测试路径,发送给测试 脚本生成装置5。上述方案中,所述测试脚本生成装置5用于通过测试路径分析装置3筛选出的各 测试路径中不同节点的关键字自动到被测试系统的JSP源文件中寻找被测试对象,记录下 相关对象类型后,自动生成自动化测试脚本。上述方案中,所述测试脚本生成装置5在生成自动化测试脚本的同时,生成失败 的脚本作为被测试系统代码静态检查的问题加以登记和修正。上述方案中,所述测试脚本生成装置5包括依次连接的测试路径读取单元10、动 作关键字抽取单元11、对象检索和匹配单元12和测试脚本生产单元14,以及连接于测试脚 本生产单元14的构建测试代码信息13。上述方案中,测试路径读取单元10,用于从测试路径选择装置选择的测试路径中 读取所需信息;动作关键字单元11,用于从路径的各节点中抽取动作关键字;对象检索和 匹配单元12,用于依据关键字在被测试系统源码中寻找代码获取相关的控件类型,并从构 件测试代码信息13中提取出对应的测试代码;构件测试代码信息13,用于积累存储各类构 件的测试代码;测试脚本生产单元14,用于按照测试路径的节点顺序,将匹配上的测试代 码组织形成测试脚本,同时输出生成失败的情况报告。上述方案中,所述数据管理装置6用于存储各测试路径中各节点进行测试的数 据,自动化测试工具7通过读取这些数据进行测试。上述方案中,所述自动化测试工具7用于读取数据管理装置6中存储的数据,运行 自动生成的自动化测试脚本,并得出相应的测试结果。为达到上述目的,本发明还提供了一种基于UML图形对软件进行自动化测试的方 法,应用于所述的基于UML图形对软件进行自动化测试的装置,该方法包括UML图形读取装置从UML图形文件中读取UML图形的节点信息,并将读取的UML图 形的节点信息发送给UML图形分析装置;UML图形分析装置根据UML图形读取装置读取的节点信息,分析出图形中各节点 间的关系,并发送给测试路径分析装置;测试路径分析装置根据UML图形分析装置提供的节点及节点间关系信息分析得 到图形所有的最大连通路径,并将该最大连通路径转化成测试路径清单并存储;测试路径选择装置根据用户选择的测试路径筛选策略,从测试路径分析装置存储 的测试路径中筛选出需要测试的路径,并发送给测试脚本生成装置;测试脚本生成装置匹配和输出自身存储的对应构件测试代码信息,产生出测试脚 本;以及自动化测试工具运行该测试脚本,完成测试工作。上述方案中,所述UML图形读取装置从UML图形文件中读取UML图形的节点信息, 是从UML图形文件中读取UML图形中涉及的节点名称、节点类型、节点权重和节点备注信 肩、ο上述方案中,所述UML图形中各节点间的关系进一步构成UML图形中由任意两个 节点确定的“边”的集合。
上述方案中,所述测试脚本生成装置匹配和输出自身存储的对应构件测试代码信 息,产生出测试脚本,包括测试脚本生成装置根据测试路径选择装置所选择的测试路径, 通过对各节点关键字在被测试系统的源码中找到相应控件后,匹配和输出测试脚本生成装 置存储的对应构件测试代码信息,产生出测试脚本。上述方案中,所述自动化测试工具运行该测试脚本之前,还包括测试人员通过数 据管理装置设定脚本运行时使用的数据。(三)有益效果从上述技术方案可以看出,本发明具有以下有益效果1、本发明提供的这种基于UML图形对软件进行自动化测试的装置及方法,通过对 UML图形进行分析根据UML图形的内容实现测试脚本的自动化生成,解决了目前在自动化 测试时需要频繁的重新录制和修改测试脚本进而导致测试效率低下、准确性和覆盖率低下 的问题。2、本发明提供的这种基于UML图形对软件进行自动化测试的装置及方法,通过对 UML图形进行分析根据UML图形的内容实现测试脚本的自动化生成,从而提高了自动化测 试脚本的准确性和覆盖率,有效的发掘出软件中存在的缺陷,提高软件的测试效率和质量, 保障企业的生产稳定与安全。3、本发明提供的这种基于UML图形对软件进行自动化测试的装置及方法,通过对 UML图形分析自动生产测试脚本,提高了自动化测试的通用性、复用性、易用性和可维护性, 降低了测试工作的人力资源成本。4、本发明提供的这种基于UML图形对软件进行自动化测试的装置及方法,测试与 需求分析无缝衔接测试人员直接根据需求分析结果产生测试路径,降低人在阅读理解时 的遗漏和错误发生概率。5、本发明提供的这种基于UML图形对软件进行自动化测试的装置及方法,与自动 化测试的快速衔接无需测试人员重新录制或者编写自动化测试脚本,而是通过脚本编译 器直接产生测试脚本。


图1是本发明提供的基于UML图形对软件进行自动化测试的装置的示意图;图2是本发明提供的测试脚本生产装置的示意图;图3是本发明提供的基于UML图形对软件进行自动化测试的方法流程图;图4是依照本发明实施例的UML图形的示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照 附图,对本发明进一步详细说明。目前软件行业比较推崇在需求分析阶段按UML的标准开展需求分析工作,UML的 一个特性是主要用图的方式表达。因此UML能够很好的反映软件的需求和功能。利用UML 图形生产测试脚本的方法包括以下步骤1、解析UML图形即自动读取UML图形的各类信 息;2、测试分析即在读取UML图信息的前提下,根据UML图的信息进行路径遍历和测试关注点抽取;3、优先路径的选择由于全路径覆盖测试几乎不可能,为了能够提高测试效果, 需要能够根据一些信息计算出各路径的优先级;4、自动化测试脚本的生产能够与自动化 测试工具进行衔接,实现测试脚本的自动化生产。本发明提供的基于UML图形对软件进行自动化测试的装置及方法,通过对UML图 形进行分析,根据UML图形的内容实现测试脚本的自动化生成,从而提高了测试效率以及 自动化测试脚本的准确性和覆盖率,有效的发掘出软件中存在的缺陷,提高软件的测试效 率和质量,保证企业生产运行的稳定性。下面结合附图进行具体说明。图1是本发明提供的基于UML图形对软件进行自动化测试的装置的示意图,该装 置包含UML图形读取装置1、UML图形分析装置2、测试路径分析装置3、测试路径选择装置 4、测试脚本生成装置5、数据管理装置6和自动化测试工具7。其中UML图形读取装置1用于从相关的UML图形文件中读取UML图形信息,并将读取的 UML图形信息发送给UML图形分析装置2,主要将图形中涉及的节点名称、节点类型、节点权 重、节点备注等读入到本装置中并加以存储。UML图形分析装置2用于解析UML图形读取装 置1读取的UML图形信息中的各项信息,主要为两两节点关系,并发送给测试路径分析装置 3。测试路径分析装置3用于通过深度或者广度优先的遍历算法,将UML图形分析装置2解 析的信息转化成各测试路径,并发送给测试路径选择装置4。测试路径选择装置4用于计 算测试路径分析装置3产生的各种测试路径的优先等级,并根据用户事先定义的优先级筛 选出相关的测试路径,并发送给测试脚本生成装置5。测试脚本生成装置5用于通过测试 路径分析装置3筛选出的各测试路径中不同节点的关键字自动到被测试系统的JSP源文件 中寻找被测试对象,记录下相关对象类型后,自动生成自动化测试脚本,同时生成失败的脚 本,可作为被测试系统代码静态检查的问题加以登记和修正。数据管理装置6用于存储各 测试路径中各节点进行测试的数据,自动化测试工具7通过读取这些数据进行测试。自动 化测试工具7用于读取数据管理装置6中存储的数据,运行自动生成的自动化测试脚本,并 得出相应的测试结果。下面对各装置进行具体描述UUML图形读取装置UML图中描述软件需求的图一般为有向图,如图4所示,图4 是依照本发明实施例的UML图形的示意图。有向图为一个有向图G是一个有序对(V,E), V是一个有限个节点集合,E是由V中两个不同元素组成的有序对集合,E中的元素称为边。 该UML图形读取装置1就是利用画图工具对图形中各节点信息的文本解释方法,用来完成 顶点集合V的读取和存储,包括节点名称、节点类型、节点权重、节点备注等。如示例图4,该图使用的画图工具的文本解释方法为状态性节点用“object State"开头、操作性节点用"object ActivityState"开头、判断性节点用"object Decision”开头;节点的权重以“pw”开头;节点的备注以“documentation”开头。以文本方 式读入图形文件后通过检索这些相关关键字将有向图中的各节点信息都读取和记录下来, 产生如下的结果
权利要求
1.一种基于UML图形对软件进行自动化测试的装置,其特征在于,该装置包括依次连 接的UML图形读取装置1、UML图形分析装置2、测试路径分析装置3、测试路径选择装置4、 测试脚本生成装置5、数据管理装置6和自动化测试工具7,该装置通过对UML图形进行分 析,根据UML图形的内容生成测试脚本,实现对软件的自动化测试。
2.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于, 所述UML图形读取装置1用于从UML图形文件中读取UML图形的节点信息,并将读取的UML 图形的节点信息发送给UML图形分析装置2。
3.根据权利要求2所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述UML图形读取装置1从UML图形文件中读取UML图形的节点信息,是从UML图形文件中 读取UML图形中涉及的节点名称、节点类型、节点权重和节点备注信息。
4.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述UML图形分析装置2用于根据UML图形读取装置读取的节点信息,分析出图形中各节点 间的关系,并将该节点及节点间关系信息发送给测试路径分析装置3。
5.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述测试路径分析装置3用于通过深度或者广度优先的遍历算法,将UML图形分析装置2解 析的信息转化成各测试路径,并存储。
6.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述测试路径选择装置4用于计算测试路径分析装置3产生的各种测试路径的优先等级,并 根据用户事先定义的优先级筛选出相关的测试路径,发送给测试脚本生成装置5。
7.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述测试脚本生成装置5用于通过测试路径分析装置3筛选出的各测试路径中不同节点的关 键字自动到被测试系统的JSP源文件中寻找被测试对象,记录下相关对象类型后,自动生 成自动化测试脚本。
8.根据权利要求7所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述测试脚本生成装置5在生成自动化测试脚本的同时,生成失败的脚本作为被测试系统代 码静态检查的问题加以登记和修正。
9.根据权利要求7所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所 述测试脚本生成装置5包括依次连接的测试路径读取单元10、动作关键字抽取单元11、对 象检索和匹配单元12和测试脚本生产单元14,以及连接于测试脚本生产单元14的构建测 试代码信息13。
10.根据权利要求9所述的基于UML图形对软件进行自动化测试的装置,其特征在于测试路径读取单元10,用于从测试路径选择装置选择的测试路径中读取所需信息;动作关键字单元11,用于从路径的各节点中抽取动作关键字;对象检索和匹配单元12,用于依据关键字在被测试系统源码中寻找代码获取相关的控 件类型,并从构件测试代码信息13中提取出对应的测试代码;构件测试代码信息13,用于积累存储各类构件的测试代码;测试脚本生产单元14,用于按照测试路径的节点顺序,将匹配上的测试代码组织形成 测试脚本,同时输出生成失败的情况报告。
11.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于,所述数据管理装置6用于存储各测试路径中各节点进行测试的数据,自动化测试工具7通 过读取这些数据进行测试。
12.根据权利要求1所述的基于UML图形对软件进行自动化测试的装置,其特征在于, 所述自动化测试工具7用于读取数据管理装置6中存储的数据,运行自动生成的自动化测 试脚本,并得出相应的测试结果。
13.一种基于UML图形对软件进行自动化测试的方法,应用于权利要求1所述的基于 UML图形对软件进行自动化测试的装置,其特征在于,该方法包括UML图形读取装置从UML图形文件中读取UML图形的节点信息,并将读取的UML图形的 节点信息发送给UML图形分析装置;UML图形分析装置根据UML图形读取装置读取的节点信息,分析出图形中各节点间的 关系,并发送给测试路径分析装置;测试路径分析装置根据UML图形分析装置提供的节点及节点间关系信息分析得到图 形所有的最大连通路径,并将该最大连通路径转化成测试路径清单并存储;测试路径选择装置根据用户选择的测试路径筛选策略,从测试路径分析装置存储的测 试路径中筛选出需要测试的路径,并发送给测试脚本生成装置;测试脚本生成装置匹配和输出自身存储的对应构件测试代码信息,产生出测试脚本;以及自动化测试工具运行该测试脚本,完成测试工作。
14.根据权利要求13所述的基于UML图形对软件进行自动化测试的方法,其特征在于, 所述UML图形读取装置从UML图形文件中读取UML图形的节点信息,是从UML图形文件中 读取UML图形中涉及的节点名称、节点类型、节点权重和节点备注信息。
15.根据权利要求13所述的基于UML图形对软件进行自动化测试的方法,其特征在于, 所述UML图形中各节点间的关系进一步构成UML图形中由任意两个节点确定的“边”的集合。
16.根据权利要求13所述的基于UML图形对软件进行自动化测试的方法,其特征在于, 所述测试脚本生成装置匹配和输出自身存储的对应构件测试代码信息,产生出测试脚本, 包括测试脚本生成装置根据测试路径选择装置所选择的测试路径,通过对各节点关键字在 被测试系统的源码中找到相应控件后,匹配和输出测试脚本生成装置存储的对应构件测试 代码信息,产生出测试脚本。
17.根据权利要求13所述的基于UML图形对软件进行自动化测试的方法,其特征在于, 所述自动化测试工具运行该测试脚本之前,还包括测试人员通过数据管理装置设定脚本运行时使用的数据。
全文摘要
本发明公开了一种基于UML图形对软件进行自动化测试的装置及方法,该装置包括依次连接的UML图形读取装置、UML图形分析装置、测试路径分析装置、测试路径选择装置、测试脚本生成装置、数据管理装置和自动化测试工具,该装置通过对UML图形进行分析,根据UML图形的内容生成测试脚本,实现对软件的自动化测试。利用本发明,解决了目前在自动化测试时需要频繁的重新录制和修改测试脚本进而导致测试效率低下、准确性和覆盖率低下的问题。
文档编号G06F11/36GK102053912SQ20111000182
公开日2011年5月11日 申请日期2011年1月6日 优先权日2011年1月6日
发明者夏知渊, 王俊良, 金莺, 高鸿升 申请人:中国工商银行股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1