测试脚本的处理方法及其调度执行系统的制作方法

文档序号:6458206阅读:631来源:国知局
专利名称:测试脚本的处理方法及其调度执行系统的制作方法
技术领域
本发明涉及测试^贞i成,更具体i也涉及测试扭卩本的处理方法及其 调度执行系统。
背景技术
随着自动化测试技术影响的进一步深入,测试部门越来越多的 考虑用自动化测试脚本耳又代一些,(重的手工测试工作。如4可设计并 调度执行测试脚本,以便测试执行人员更方便快捷的进行测试执行 工作,直接影响到测试脚本的推广和在整个测试过程中的应用效果, 如何保证测试脚本的可移植性、测试数据的易加载性和测试脚本调 度的灵活性、有效性,成为脚本设计和调度执行的最大挑战。在本领域中,比较典型的测试脚本设计和调度执行的系统,如 IBM 7>司的TestManager和HP 乂>司的TestDirector,采用的i殳计方 法和调度执行方式是测试数据与测试脚本以文件方式完全分离, 测试数据存在另外的文件中;执行人员调度执行时手工打开文件进 行数据配置,调度执行系统直接调用原脚本文件执行。这种方式存在的不足之处在于1).测试数据与测试脚本以文件方式完全分离,使得测试脚本 必须依赖数据文件才能调度执行,且测试数据文件名不能随意更改,否则执行人员需要修改原测试脚本才能正确调度执行脚本、这是测i式;;虎禾呈中不允i午的;2).若一个脚本一个^t据文件,文件^:目会急剧膨胀,且若一 次调度执行多个脚本,执4亍人员需要打开每个数据文件》f改数据进 行配置;若多个脚本共用一个lt据文件,才及易造成凄t据混淆,且脚 本之间依赖性太强,不利于移植和管理;样会导致多个测试计划的数据配置不能同时保存,每次执行同样的 测试计划都必须重新配置数据;以及4 ). 一次测试计划中同 一扭卩本无法一次配置多套凄t据^l^亍。因此,需要一种测试脚本的解决方案,能够解决上述相关技术 中的问题。发明内容本发明的目的在于针对上面描述的现有技术的不足,提出一种 测试脚本的处理方法和调度执行系统,并提供图形界面,使测试执 行人员能够简单方便的调度执行测试脚本,实现了同一脚本一次配 置多套数据调度执行功能,并能够保存多套测试计划的详细信息, 以便下次再次调度执行,提高了调度执行的效率,减少了执行人员 配置数据的繁瑣性。根据本发明的一个方面,提供了一种测试脚本处理方法,包括 以下步骤^吏测试凄t据与脚本分离,并4吏测试凄t据与脚本处于同一 扭P本文件中;以及在脚本文件开始处,使用注释关键字标识全局变 量参lt段和局部变量参数革殳。在全局变量参数段和局部变量参数段中用脚本语言直接对全局 变量和局部变量U武^f直。根据本发明的另 一个方面,提供了 一种测试脚本的调度执行系统,包括脚本库扫描才莫块,用于通过扫描扭卩本库目录层次结构来 显示测试肚卩本库;测试计划管理才莫块,用于创建测试计划、测试场 景、脚本实例、实际目录以及相关文件,用于数据的配置和装载, 用于配置测试场景的调度信息和脚本实例的执行信息,以及用于保 存测试计划、测试场景、脚本实例的层析结构信息、以及测试场景 的调度信息和脚本实例的执行信息;测试计划调度执行模块,用于 自动创建执行任务,并调用脚本语言解释器来调度执行当前计划和 当前测试场景下的肚卩本实例。该系统还包括显示模块,用于显示脚本实例的执行时间、以及 是否执行成功的信息。测试计划管理才莫块包括测试计划创建才莫块,用于创建测试计 划、测试场景、脚本实例、实际目录以及相关文件;lt据配置与装 载才莫块,用于数据的配置和装载;冲丸行信息配置才莫块,用于配置测 试场景的调度信息和测试脚本的执行信息;以及测试计划保存模块, 用于保存测试计划、测试场景、脚本实例的层析结构信息、以及用 于保存测试场景的调度信息和脚本实例的执行信息。测试计划创建才莫块还用于在创建测试计划和测试场景时,创建 层次化的目录结构。测试计划创建才莫块还用于在创建脚本实例时,将原脚本文件拷 贝到测试场景目录下,并重新对其进4亍命名。测试计划创建才莫块还用于在创建测试场景和扭卩本实例时,自动 创建测试场景下的全局变量表单和脚本实例的局部变量表单,以及从脚本实例中解析全局变量参凄t的值和局部变量参lt的值,并将其 分别填入全局变量表单和局部变量表单中。从一个INI文件中读取全局变量的名称,并使用脚本语言对其ii^亍谇刀士台^:。数据配置与装载模块利用由测试场景提供的配置界面一次性配 置全局变量参数段,并将配置后的全局变量参数段替换到所有的脚 本实例中。数据配置与装载才莫块利用由脚本实例提供的配置界面一次性配 置局部变量参数段,并将配置后的局部变量参数段替换到所有的脚 本实例中。数据配置与装载模块在对全局变量段和局部变量段进行配置以 后,更新测试场景下的全局变量表单和局部变量表单。数据配置与装载模块将配置后的全局变量参数段和局部变量参 凄t^:装载到当前场景下的脚本实例中。测试场景的调度信息包括执行模式、执行时间、以及执行次数。执行模式包括按时间执行和立即执行。测试脚本的执行信息包括执行次数、等待时间、和脚本超时 信息。本发明具有如下有益效果没有单独的凄t据文件,测试脚本可 直接在解释器下调度执行,移才直也方^更;创建测试计划时,允许为同一个测试脚本创建多个脚本实例,配置多套数据执行测试;提供界面的配置方式,给测试执行人员配置数据带来^艮大的便利;全局变量lt据可在测试场景下一次性配置,不需要多次配置,减少测试 执行人员配置的重复性。本发明的其它特征和优点将在随后的说明书中阐述,并且,部 分地从说明书中变得显而易见,或者通过实施本发明而了解。本发 明的目的和其4也优点可通过在所写的i兑明书、纟又利要求书、以及附 图中所特别指出的结构来实现和获得。


此处所说明的附图用来l是供对本发明的进一步理解,构成本申 请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中图1是示出根据本发明实施例的测试脚本处理方法的流程图; 图2是示出才艮据本发明实施例的测试脚本的调度执行系统的框图;图3是示出根据本发明实施例的创建脚本实例的流程图;以及 图4是示出才艮据本发明实施例的数据装载流程图。
具体实施方式
下面将结合附图来详细说明本发明的实施例。图1是示出根据本发明实施例的测试脚本处理方法的流程图。步骤S102,使测试数据与脚本分离,并使测试数据与脚本处于同一脚本文件中;以及步骤S104,在脚本文件开始处,使用注释关键字 标识全局变量参数段和局部变量参lt,史。在全局变量参数段和局部变量参数,殳中用脚本语言直接对全局 变量和局部变量赋值。图2是示出根据本发明实施例的测试脚本的调度执行系统的框 图。参照图2,测试脚本的调度执行系统200包括脚本库扫描模 块202,用于通过扫描扭卩本库目录层次结构来显示测试肚卩本库;测 试计划管理才莫块204,用于创建测试计划、测试场景、扭卩本实例、 实际目录以及相关文^f牛,用于f^居的配置和装载,用于配置测试场 景的调度信息和脚本实例的执行信息,以及用于保存测试计划、测 试场景、脚本实例的层析结构信息、以及测试场景的调度信息和脚 本实例的执行信息;以及测试计划调度执行模块206,用于自动创 建执行任务,并调用脚本语言解释器来调度执行当前计划和当前测 试场景下的扭卩本实例。该系统还包括显示才莫块208,用于显示脚本实例的执行时间、 以及是否执行成功的信息。测试计划管理;漠块204包括测试计划创建模块2042,用于创 建测试计划、测试场景、扭卩本实例、实际目录以及相关文件; 居 配置与装载模块2044,用于数据的配置和装载;执行信息配置模块 2046,用于配置测试场景的调度信息和测试脚本的执行信息;以及 测试计划保存才莫块2048,用于保存测试计划、测试场景、脚本实例 的层析结构信息、以及用于保存测试场景的调度信息和脚本实例的 执行信息。测试计划创建才莫块2042还用于在创建测试计划和测试场景时, 创建层次化的目录结构。测试计划创建才莫块2042还用于在创建脚本实例时,将原脚本文件拷贝到场景目录下,并重新对其进行命名。测试计划创建冲莫块2042还用于在创建测试场景和脚本实例时, 自动创建测试场景下的全局变量表单和脚本实例的局部变量表单, 以及从脚本实例中解析全局变量参数的值和局部变量参数的值,并 将其分别填入全局变量表单和局部变量表单中。从一个INI文件中读取全局变量的名称,并使用脚本语言对其 ;ii^于^7士会^i。^:据配置与装载^f莫块2044利用由测试场景冲是供的配置界面一 次性配置全局变量参数段,并将配置后的全局变量参数段替换到所 有的肚卩本实例中。数据配置与装载模块2044利用由脚本实例提供的配置界面一 次性配置局部变量参数段,并将配置后的局部变量参数段替换到所 有的肚卩本实例中。数据配置与装载才莫块2044在对全局变量^:和局部变量^殳进行 配置以后,更新测试场景下的全局变量表单和局部变量表单。数据配置与装载模块2044将配置后的全局变量参数段和局部 变量参数段装载到当前场景下的脚本实例中。测试场景的调度信息包括执行模式、执行时间、以及执行次数。执行模式包括按时间执行和立即执行。测试脚本的执行信息包括执行次数、等待时间、和脚本超时 信息。下面描述本发明的 一 个实施例。在该实施例中,构建了一种测试脚本的调度#1行系统,该系统包括如下功能模块脚本库扫描模块;测试计划管理模块;测试计 划调度执行模块;执行结果显示模块;其中所述脚本库扫描一莫块,是通过扫描脚本库目录层次结构,在用 户界面上以树状形式显示出测试扭卩本库,供用户拖动并创建脚本实 例时〗吏用。所述测试计划管理模块,包括了测试计划创建模块、数据配置 与装载模块、执行信息配置模块和测试计划保存模块。所述测试计划管理模块中的测试计划创建模块,是指测试计划、 测试场景、脚本实例三个层次节点的创建,以及实际目录和相关文 件的创建。测试计划节点和测试场景节点创建的同时,自动创建层 次化的目录结构。脚本实例节点创建的同时自动拷贝原脚本文件到 场景目录下,并加上实例号重新命名。测试场景和脚本实例创建的 同时,自动创建该场景下的全局变量表单和各个脚本实例的局部变 量表单,并从脚本实例中解析全局变量参凄t和局部变量参凄t的值并 i真入相应的表单中。全局变量名称/人一个统一的INI文4牛中读耳又, 并全部用脚本语言初始4匕。当4备动第一个脚本时,解析该脚本中全 局参数段中全局变量替换掉表单中的值,并最终以Excel表格形式 保存在场景目录下。所述测试计划管理模块中数据配置与装载模块,包括数据配置 和数据装载两个部分。同一场景下的全局变量参凄t艮的值都是一致 的,因此,全局变量参凄t-敬由测试场景节点l是供配置界面进4亍一次性配置,配置成功后自动替换到所有脚本实例中;局部变量参数段由脚本实例节点l是供配置界面进行配置并替换,所有参n配置成功后自动更新场景下的Excel表格中的相应表单。数据装载可直接将 用户创建或修改的Excel表格中的全局变量参数段和各个脚本实例 的局部变量参数值装载到当前场景下的脚本实例中。所述测试计划管理模块中执行信息配置模块,是指测试场景的 调度信息配置和测试脚本的执行信息配置。测试场景的调度信息配 置包括执行模式(按时间执行/立即执行)、执行时间、执行次数等 信息的配置;测试脚本的执行信息配置包括执行次数、等待时间、 脚本超时等信息的配置。所述测试计划管理模块中测试计划保存模块,是指将测试计划、 测i式场景、脚本实例的层次结构信息、以及测试场景和肚卩本实例的 调度一丸4于配置等〗言息,以XML文件方式描述^f呆存,该测试计划不 加修改就能打开调度执行。所述测试计划调度执行模块,是指自动创建执行任务,并直接 调用脚本语言解释器调度执行由用户当前计划和测试场景下的脚本 实例。所述执行结果显示才莫块,是指将脚本执行时间、执行成功与失 败等信息显示出来,方^^用户查看。下面参照图2、图3和图4来描述本发明的另一个实施例。本实施例的调度执行系统结构如图2所示,包括脚本库扫描模 块、测试计划管理模块、测试计划调度执行模块、执行结果显示模 块,其中测试计划管理模块又包括了测试计划创建模块、数据配置 与装载模块、执行信息配置模块和测试计划保存模块。所述测试计划创建一莫块包括了测试计划创建、测试场景创建、脚本实例创建三个部分。测试计划创建时创建计划节点和计划目录;测试场景创建时分别在计划节点和计划目录下创建场景节点和场景目录,并在场景目录下创建场景数据配置Excel文件和global表单, 根据INI文件将全局变量初始化并填入global表单。其中INI文件 中包含了所有全局变量的名称,脚本中的全局变量参数段中的变量 可以是它的一部分也可是全部。当用户纟也动脚本至场景节点时,则 进入创建脚本实例流程,如图3所示,包括如下步骤步骤S302 ~ S304,判断是否是该场景下的第一个脚本,如果是, 将脚本中全局变量的值提取出来并填充到场景Excel文件的global 表单,如果不是,直接执行步骤S306;步骤S306,在当前场景节点下创建脚本实例节点,复制脚本至 场景目录下,并加上实例号重新命名;步骤S30S,将场景Excd数据文件中的全局变量的值替换掉脚 本实例的全局参数段的值;步-骤S310,在场景Excel凄t据文件中创建以该脚本实例命名的 表单,并将脚本中局部变量参凌t写入该表单。如图4所示,^:据装载过程如下步骤S402,用户选择待装载的Excel数据文件,假设为B.xls;步骤S406 ~ S408,判断B.xls文件中的global表单是否存在? 如果存在,将当前场景的Excel数据文件(々支设为A.xls)的global 表单替换成B.xls文件中的global表单,并替换掉当前场景下所有 脚本实例的全局参数段;如果不存在,判断是否继续?如果继续, 才丸4亍步马聚S410 S414,否则退出;步骤S410 S414,取出当前场景下一个脚本实例文件名,判断 B.xls文件的脚本表单是否存在?如果不存在,记录该脚本实例名, 继续#^亍步-骤S416,否则冲丸4亍步冬聚S418 ~ S420;步骤S416,将当前场景数据文件A.xls的脚本表单替换成B.xls 文件的脚本表单,并替换掉当前脚本实例的局部变量参数段;以及步骤S418 ~ S420,判断当前脚本是不是当前场景的最后一个脚 本,如果是,显示所有未^皮装在的脚本实例文件名;如果不是,则 转步骤S410 S414。本发明具有如下有益效果没有单独的^t据文件,测试脚本可 直接在解释器下调度冲丸行,移植也方〗更;创建测试计划时,允许为 同一个测试脚本创建多个脚本实例,配置多套数据执行测试;提供 界面的配置方式,给测试执行人员配置数据带来很大的便利;全局 变量ft据可在测试场景下一次性配置,不需要多次配置,减少测试 执行人员配置的重复性。以上所述^又为本发明的优选实施例而已,并不用于限制本发明, 对于本4贞i或的才支术人员来i兌,本发明可以有各种更改和变^匕。凡在 本发明的精神和原则之内,所作的任何修改、等同替换、改进等, 均应包含在本发明的保护范围之内。
权利要求
1.一种测试脚本处理方法,其特征在于,包括以下步骤使测试数据与脚本分离,并使所述测试数据与所述脚本处于同一脚本文件中;以及在所述脚本文件开始处,使用注释关键字标识全局变量参数段和局部变量参数段。
2. 根据权利要求1所述的方法,其特征在于,在所述全局变量参 数—段和所述局部变量参lt革殳中用脚本语言直4妻对全局变量和 局部变量赋值。
3. —种测试脚本的调度执行系统,其特征在于,包括脚本库扫描才莫块,用于通过扫描脚本库目录层次结构来显 示所述测试脚本库;测试计划管理才莫块,用于创建测试计划、测试场景、脚本 实例、实际目录以及相关文件,用于数据的配置和装载,用于 配置所述测试场景的调度信息和所述脚本实例的执行信息,以 及用于保存所述测试计划、所述测试场景、所述脚本实例的层 析结构信息、以及所述测试场景的调度信息和所述脚本实例的 寺丸ff信息;测试计划调度执行模块,用于自动创建执行任务,并调用 脚本语言解释器来调度执行当前计划和当前测试场景下的脚 本实例。
4. 根据权利要求3所述的系统,其特征在于,还包括显示模块, 用于显示所述脚本实例的执行时间、以及是否执行成功的信自、
5. 根据权利要求4所述的系统,其特征在于,所述测试计划管理 模块包括测试计划创建才莫块,用于创建所述测试计划、所述测试场 景、所述脚本实例、所述实际目录以及相关文件;数据配置与装载模块,用于所述数据的配置和装载;冲丸行信息配置才莫块,用于配置所述测试场景的调度信息和 所述测试脚本的执行信息;以及测试计划保存才莫块,用于^f呆存所述测试计划、所述测试场 景、所述脚本实例的层析结构信息、以及用于保存所述测试场 景的调度信息和所述脚本实例的执行信息。
6. 根据权利要求5所述的系统,其特征在于,所述测试计划创建 模块还用于在创建所述测试计划和所述测试场景时,创建层次 化的目录结构,以及还用于在创建所述脚本实例时,将原脚本 文件拷贝到场景目录下,并重新对其进行命名。
7. 根据权利要求6所述的系统,其特征在于,所述测试计划创建 模块还用于在创建所述测试场景和所述脚本实例时,自动创建 所述测试场景下的全局变量表单和所述肚卩本实例的局部变量 表单,以及乂人所述脚本实例中解析全局变量参数的值和局部变 量参数的值,并将其分别填入所述全局变量表单和所述局部变 量表单中。
8. 根据权利要求7所述的系统,其特征在于,所述数据配置与装 载才莫块利用由所述测试场景^是供的配置界面一次性配置所述 全局变量参数段,将配置后的所述全局变量参数段替换到所有 的脚本实例中,并更新所述测试场景下的所述全局变量表单。
9. 根据权利要求7或8所述的系统,其特征在于,所述数据配置 与装载模块利用由所述脚本实例提供的配置界面一次性配置 所述局部变量参IW殳,将配置后的所述局部变量参数^:替换到 所有的脚本实例中,并更新所述测试场景下的所述局部变量表 单。
10. 4艮据权利要求9所述的系统,其特征在于,所述数据配置与装载才莫块将配置后的所述全局变量参数^:和所述局部变量参数 段装载到当前场景下的脚本实例中。
全文摘要
本发明公开了一种测试脚本处理方法及其调度执行系统,该方法包括以下步骤使测试数据与脚本分离,并使测试数据与脚本处于同一脚本文件中;以及在脚本文件开始处,使用注释关键字标识全局变量参数段和局部变量参数段。本发明使得在创建测试计划时,允许为同一个测试脚本创建多个脚本实例,配置多套数据来执行测试。
文档编号G06F9/44GK101221504SQ20081000874
公开日2008年7月16日 申请日期2008年1月23日 优先权日2008年1月23日
发明者吴桂云, 平 张, 婷 祁, 薛勇权, 邓巨峰 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1