一种脚本及关联数据移植系统及移植方法

文档序号:6464052阅读:118来源:国知局
专利名称:一种脚本及关联数据移植系统及移植方法
技术领域
本发明涉及软件测试,尤其涉及一种脚本及关联数据移植系统及移植方法。
背景技术
在使用自动化测试软件Rational Robot对测试对象进行自动化测试时,需 要建立一个工程,以管理所有脚本和与之相关的关联数据,脚本与关联数据 分别存放在不同的位置,脚本运行时随时读取与之相关的关联数据,两者结 合才能完成对测试对象的测试。
当测试对象的规模过于庞大时,Robot需要管理的脚本和关联数据会不 断增加,最终导致Robot脚本库异常庞大,管理效率降低且容易造成混乱。 此时一般是建立多个工程对测试对象各个功能分别进行测试,以缩小工程管 理脚本和关联数据的规模。
而多个工程对同一个测试对象进行测试时,各个工程之间需要移植脚本 及关联数据,就需要拷贝多个文件,并且需要修改相应的数据表。在当前自 动化测试软件Rational Robot的系统中,并不提供不同工程之间的脚本及关联 数据移植功能。如果靠手工逐个拷贝脚本及关联数据,会浪费大量时间和精 力,工作繁瑣且容易出错,因此很多不同工程之间本来可以共享的脚本不得 不重复录制。
因此,建立多个工程对同一个对象进行测试时,在管理上存在缺陷,有 必要做出相应的改进和发展。

发明内容
本发明所要解决的技术问题是在于需要提供一种软件测试中的脚本及关联数据的移植系统及移植方法,以方便快速地在不同工程之间完成脚本及关 联数据的移植。
为了解决上述技术问题,本发明首先提供了一种脚本及关联数据移植系 统,用于将脚本及与所述脚本相关的关联数据从源工程移植到目标工程,所
迷系统包括目录设定模块,搜索模块,拷贝模块及修改模块,其中
所述目录设定;f莫块,获得所述源工程中存储所述脚本的脚本源路径和存 储所述关联数据的关联数据源路径;获得所述目标工程中存储所述脚本的脚 本目标路径和存储所述关联数据的关联数据目标路径;
所述搜索模块,与所述目录设定模块相连,根据所述脚本源路径搜索所 述源工程的所有脚本;
所述拷贝模块,与所述目录设定模块、搜索模块及修改模块相连,在所 述所有脚本中选择需要移植的所述脚本,并根据所述脚本目标路径将所述脚 本拷贝到所述目标工程;根据所述关联数据源路径搜索所述关联数据,并根 据所述关联数据目标路径将所述关联数据拷贝到所述目标工程中;把所述脚 本的名称传递到所述修 文模块;
所述修改模块,根据所述脚本的名称修改所述目标工程中的表记录。
如上所述的系统中,所迷目录设定模块可以设定所述源工程及目标工程 中存储所述脚本及关联数据的根目录;可以根据所述源工程中存储所述脚本 和关联数据的根目录,分别生成所述脚本源路径和所述关联数据源路径;可 以根据所述目标工程中存储所述脚本和关联数据的根目录,分别生成所述脚 本目标路径和所述关联数据目标路径。
如上所述的系统中,所述拷贝模块,可以包括脚本拷贝子模块和相关数 据拷贝子才莫块,其中
所述脚本拷贝子模块,与所述目录设定模块,搜索模块,修改模块及相 关数据拷贝子模块相连,根据所述脚本目标路径将所述脚本拷贝到目标工程, 把所述脚本的名称传递到所述修改模块及相关数据拷贝子模块;
所述相关数据拷贝子模块,与所述目录设定模块及脚本拷贝子模块相连, 把所述关联数据拷贝到所述目标工程。如上所述的系统中,所述拷贝模块可以根据所述脚本的名称生成RTXML 文件,将所述RTXML文件发送给所述修 文模块。
如上所述的系统中,所述修改^t块可以根据所述脚本的名称,修改所述 目标工程中存储脚本的Script表,和存储所述关联数据的TMS一UIDMAP表。
本发明还提供了一种脚本及关联数据移植方法,用于将脚本及与所述脚 本相关的关联数据从源工程移植到目标工程,包括以下步骤
获得所述源工程中存储所述脚本的脚本源路径和存储所述关联数据的关 联数据源路径;
的关联数据目标路径;
根据所述脚本源路径在所述源工程中搜索并选择所述脚本;
根据所述脚本目标路径将所述脚本移植到所述目标工程中;
根据所述关联数据源路径在所述源工程中搜索所述关联数据;
根据所述关联数据目标路径将所述关联数据存储到所述目标工程中;
根据所述脚本的名称修改所述目标工程中的表记录。
如上所述的方法中,获得所述源工程中存储所述脚本的脚本源路径和存 储所述关联数据的关联数椐源路径的步骤,可以包括如下步骤
设定所述源工程中存储所述脚本及关联:数据的根目录;
根据所述源工程中存储所述脚本和关联数据的根目录,分别生成所述脚 本源路径和所述关联数据源路径。
如上所述的方法中,获得所述目标工程中存储所述脚本的脚本目标路径 和存储所述关联数据的关联数据目标路径的步骤,可以包括如下步骤
设定所述目标工程中存储所述脚本及关联数据的根目录;
根据所述目标工程中存储所述脚本和关联数据的根目录,分别生成所述 脚本目标路径和所述关联数据目标路径。
如上所述的方法中,将所述脚本移植到所述目标工程中的步骤,可以包 括根据所述脚本的名称生成RTXML文件,将所述RTXML文件发送到所述目标工程。
如上所述的方法中,根据所述脚本的名称修改所述目标工程中的表记录 的步骤,可以包括根据所述脚本的名称,修改所述目标工程中存储脚本的
Script表,和存储所述关联数据的TMS—UIDMAP表。
与现有技术相比,本发明在不同工程之间实现了脚本与关联数据的自动 化移植,节省了脚本录制的时间。


图l是本发明移植系统实施例的组成示意图。
图2是本发明系统实施例中拷贝模块的组成示意图。
图3是本发明移植方法实施例的流程示意图。
具体实施例方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明 如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解 并据以实施。
图1示出了本发明移植系统实施例的组成示意,系统包括目录设定模块 110,搜索模块120,拷贝模块130及修改模块140,其中
目录设定模块110,与搜索模块120及拷贝模块130相连,设定源工程 及目标工程中存储脚本及与脚本相关的关联数据的根目录,并根据源工程根 目录生成源工程中存储脚本的脚本源路径,和存储与脚本相关的关联数据的 关联数据源路径;根据目标工程根目录生成目标工程存储脚本的脚本目标路 径,和存储关联数据的关联数据目标路径;所生成的脚本源路径和关联数据 源路径,脚本目标路径和关联数据目标路径,供搜索模块120及拷贝模块130 调用;
搜索模块120,与目录设定模块110及拷贝模块130相连,根据目录设 定模块110生成的脚本源路径搜索源工程的所有脚本,以供拷贝模块130调 用;拷贝模块130,与目录设定模块110,搜索模块120及修改模块140相连, 在搜索模块120搜索结果中选择需要移植的脚本,并根据目标设定模块110 生成的脚本目标路径,将所选择的需要移植的脚本拷贝到目标工程;根据目 录设定模块110生成的关联数据源路径,搜索与拷贝模块130所选择的脚本 相关的关联数据,并根据目录设定模块]10生成的关联数据目标路径,将搜 索到的关联数据拷贝到目标工程中;然后根据脚本名称生成RTXML文件并 传送给修改模块140,把源工程所选择的需要移植的脚本名称通过RTXML 文件传递到修改才莫块140;
修改模块140,与拷贝模块130相连,根据拷贝模块130所选择的源工 程中需要移植的脚本名称(RTXML文件),修改目标工程中的相关表记录, 在目标工程中的存储脚本信息的Script表和存储关联数据信息的 TMSJJIDMAP表中分别添加所移植的脚本及关联数据。
其中的拷贝模块130,又分为脚本拷贝子模块131和相关数据拷贝子模 块132,如图2所示,其中
脚本拷贝子模块131,与目录设定模块110,搜索模块120,修改模块140 及相关数据拷贝子模块132相连,根据目标设定模块110生成的脚本目标路 径,将源工程中需要移植的脚本拷贝到目标工程,然后根据所选择的需要移 植的脚本名称生成RTXML文件,把源工程需要移植的脚本名称传递到相关 数据拷贝子模块132及修 文模块140;
相关数据拷贝子模块132,与目录设定模块110及脚本拷贝子模块131 相连,把源工程与需要移植的脚本相关的关联数据拷贝到目标工程。
根据目录设定模块110生成的关联数据源路径和关联数据目标路径,将 搜索到的关联数据拷贝到目标工程中。
图3示出了本发明移植方法实施例的流程示意图,该方法实施例包括如 下步骤
步骤310,设定移植脚本及与脚本相关的关联数据位于源工程的根目录, 设定移植脚本及关联数据位于目标工程的根目录;假设脚本及关联数据位于 源工程的根目录为SSProjectS,目标工程的根目录为SDProjectS;
9步骤320,根据源工程中脚本及关联数据的根目录,分别生成源工程中 存储脚本的脚本源路径SSProjectSVTestDatastoreVDefaultTestScriptDatastore
\TMS—Scripts\,以及源工程中存储关联数据的关联数据源路径;根据目标工 程中脚本及关联数据的根目录,分别生成目标工程中存储脚本的脚本目标路 径SDProjectSVTestDatastoreWefaultTestScriptDatastoreVTMS—Scripts\,和目标工 程中存储关联数据的关联数据目标路径;
步骤330,根据脚本源路径,在源工程中搜索并显示所有文件类型为REC 的脚本,以供选择移植;
步骤340,选择需要移植的脚本后,根据脚本目标路径把所选择的脚本 复制到目标工程中的TMS—Scripts文件夹中,并在脚本目标路径下以UTF-8 的编码方式生成与所复制的脚本同名的RTXML类型文件;
步骤350,根据RTXML类型文件在源工程中关联数据源路径 $SProject$\TestDatastore\DefaultTestScriptDatastore\TMS—Scripts\vp\目录下搜 索所有与所移植的脚本相关的验证点数据文件,以数据流形式读出验证点数 据 ".base.obp " 文件,然后根据关联数据目标路径 $DProject$\TestDatastore\DefaultTestScriptDatastore\TMS_Scripts\vp\,将-验i正点 数据".base.obp"文件以数据流形式存储到目标工程中;
步 骤 360 , 修 改 目 标 工 程 中 $DProject$\TestDatastore\DefaultTestScriptDatastore\tds.mdb文件中存储脚本 信息的Script表和存储关联数据信息的TMS—UIDMAP表,在这两个表中插 入被移植的脚本的记录,其中在Script表中插入被移植文件记录时,以复制 时间为用户ID (UserID,缩写为UID),并设置脚本的创建者、修改者、拥 有者都是admin,当然,也可以是其他用户。其中上述的以复制时间为UID, 是因为对于每个脚本都要有一个UID与之对应。UID是唯一的,所以考虑用 用户复制脚本的时间来当作UID避免出现重复。这个UID是作为Robot识别 脚本的一个标志写在RTXML文件中并同时记录在Script表和TMS一UIDMAP 表中。
与现有技术相比较,本发明提供一种Robot脚本及关联数据的移植系统 和方法,为不同Robot工程之间方便快捷地移植脚本及关联数据提供了解决方案,节省了脚本重复录制的时间,提高了脚本利用率。
虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本 发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内 的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的 形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所 附的权利要求书所界定的范围为准。
权利要求
1、一种脚本及关联数据移植系统,用于将脚本及与所述脚本相关的关联数据从源工程移植到目标工程,其特征在于,所述系统包括目录设定模块,搜索模块,拷贝模块及修改模块,其中所述目录设定模块,获得所述源工程中存储所述脚本的脚本源路径和存储所述关联数据的关联数据源路径;获得所述目标工程中存储所述脚本的脚本目标路径和存储所述关联数据的关联数据目标路径;所述搜索模块,与所述目录设定模块相连,根据所述脚本源路径搜索所述源工程的所有脚本;所述拷贝模块,与所述目录设定模块、搜索模块及修改模块相连,在所述所有脚本中选择需要移植的所述脚本,并根据所述脚本目标路径将所述脚本拷贝到所述目标工程;根据所述关联数据源路径搜索所述关联数据,并根据所述关联数据目标路径将所述关联数据拷贝到所述目标工程中;把所述脚本的名称传递到所述修改模块;所述修改模块,根据所述脚本的名称修改所述目标工程中的表记录。
2、 如权利要求l所述的系统,其特征在于,所述目录设定模块设定所述 源工程及目标工程中存储所述脚本及关联数据的根目录;根据所述源工程中 存储所述脚本和关联数据的根目录,分别生成所述脚本源路径和所述关联数 据源路径;根据所述目标工程中存储所述脚本和关联数据的根目录,分别生 成所述脚本目标路径和所述关联数据目标路径。
3、 如权利要求l所述的系统,其特征在于,所述拷贝模块,包括脚本拷 贝子才莫块和相关数据拷贝子才莫块,其中所述脚本拷贝子模块,与所述目录设定模块,搜索模块,修改模块及相 关数据拷贝子模块相连,根据所述脚本目标路径将所述脚本拷贝到目标工程, 把所述脚本的名称传递到所述修改模块及相关数据拷贝子模块;所述相关数据拷贝子模块,与所述目录设定模块及脚本拷贝子模块相连, 把所述关联数据拷贝到所述目标工程。
4、 如权利要求l所述的系统,其特征在于,所述拷贝模块根据所述脚本的名称生成RTXML文件,将所述RTXML文件发送给所述修改模块。
5、 如权利要求l所述的系统,其特征在于,所述修改才莫块根据所述脚本 的名称,修改所述目标工程中存储脚本的Script表,和存储所述关联数据的 TMS—腦MAP表。
6、 一种脚本及关联数据移植方法,用于将脚本及与所述脚本相关的关联 数据从源工程移植到目标工程,其特征在于,包括以下步骤获得所述源工程中存储所述脚本的脚本源路径和存储所述关联数据的关 联数据源路径;获得所述目标工程中存储所述脚本的脚本目标路径和存储所述关联数据 的关联数据目标路径;根据所述脚本源路径在所述源工程中搜索并选择所述脚本;根据所述脚本目标路径将所述脚本移植到所述目标工程中;根据所述关联数据源路径在所述源工程中搜索所述关联数据;根据所述关联数据目标路径将所述关联数据存储到所述目标工程中;根据所述脚本的名称修改所述目标工程中的表记录。
7、 如权利要求6所述的方法,其特征在于,获得所述源工程中存储所述 脚本的脚本源路径和存储所述关联数据的关联数据源路径的步骤,包括如下 步骤设定所述源工程中存储所述脚本及关联数据的根目录;根据所述源工程中存储所述脚本和关联数据的根目录,分别生成所述脚 本源路径和所述关联数据源路径。
8、 如权利要求6所述的方法,其特征在于,获得所述目标工程中存储所 述脚本的脚本目标路径和存储所述关联数据的关联数据目标路径的步骤,包 括如下步骤设定所述目标工程中存储所述脚本及关联数据的根目录;根据所述目标工程中存储所述脚本和关联数据的根目录,分别生成所迷 脚本目标路径和所述关联数据目标路径。
9、 如权利要求6所述的方法,其特征在于,将所述脚本移植到所述目标工程中的步骤,包括根据所述脚本的名称生成RTXML文件,将所述RTXML 文件发送到所述目标工程。
10、 如权利要求6所述的方法,其特征在于,根据所述脚本的名称修改 所述目标工程中的表记录的步骤,包括根据所述脚本的名称,修改所述目标 工程中存储脚本的Script表,和存储所述关联数据的TMSJJIDMAP表。
全文摘要
本发明公开了一种脚本及关联数据移植系统和移植方法,软件测试中方便快速地在不同工程之间完成脚本及关联数据的移植,其中该方法首先设定脚本及关联数据在源工程和目标工程中的位置,然后搜索需要移植的脚本及相应的关联数据,最后从源工程中分别将脚本及关联数据移植到目标工程中,与现有技术相比,实现了脚本与关联数据的自动化移植,节省了脚本录制的时间,可广泛应用于软件测试中。
文档编号G06F11/36GK101609425SQ20081011147
公开日2009年12月23日 申请日期2008年6月19日 优先权日2008年6月19日
发明者艳 周, 张祎强, 朱进才 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1