通过由测试集组成的测试环境来实现产品自动测试的方法技术

技术编号:2848671 阅读:193 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种通过由测试集组成的测试环境来实现产品自动测试的方法,为解决现有方法会导致测试环境冗余、维护成本非常高等问题,本发明专利技术中,根据测试所需的测试环境和测试逻辑,将测试环境分解为树状结构、分级排布的多个测试集;然后选定位于最后一级的任一个测试集,再根据所述第一级、第二级、…、上上级、上级测试集以及其自身依次建立对应的测试环境;然后执行针对当前已建立的测试环境所配置的测试逻辑,然后恢复根据当前所选测试集所建立的测试环境;按同样的模式,遍历每一个位于分支末端的测试集以执行与之对应的测试逻辑,其间,针对每一个测试集,应确保根据其建立测试环境的步骤以及恢复根据其建立的测试环境的步骤都只执行一次。

【技术实现步骤摘要】

本专利技术涉及自动化测试技术,更具体地说,涉及一种。
技术介绍
在对电信设备或软件进行测试的过程中,通常是使用Key-Word Driven(关键字驱动)技术,它是基于Rational公司的Robot工具平台而实现的,通常应用于GUI(图形用户界面)的自动化测试中。在关键字驱动技术中,测试人员会使用类似Excel工作表的表格,以输入关键字(Key-Word)的方式来建立测试用例。这个方法的整个过程(包含功能)都是由关键字驱动的,关键字控制了整个测试过程。表一所示是一个示例性的测试用例。表一 其中,第一列是关键字,用于说明要执行的动作;第二到第四列,是执行第一列的动作所必需的参数;第五列用于表示该步骤是否通过。如图1所示,关键字驱动技术的运作机制如下(1)测试人员以Excel建立如表一所示的测试用例文件,例如可命名为KeyWords Web.xls;测试用例文件由关键字(如Enter、Action、Verify等)及其参数组成。(2)测试用例运行时,驱动脚本(Drive TSL script)会运行初始化脚本(LogonTSL script),为整个测试作初始化工作,并载入控制文件(Run.txt),以获取当前要运行的测试用例(*.xls,例如前述KeyWords_Web.xls)。(3)驱动脚本(Drive TSL script)在初始化工作完成后,启动控制脚本(Controller TSL script),由控制脚本来负责解析整个测试用例文件的关键字,例如Enter、Action、Verify等,并根据这些关键字来调用与之对应的实现脚本(User Defined TSL script)。(4)Utility脚本(即实现TSL脚本)实际执行每个测试动作,并且使用其它列作为参数,执行完后将结果回传给控制脚本。当控制脚本执行到最后一行,整个测试用例就结束执行。(5)当控制文件(Run.txt)中的所有用例文件(*.xls)都已运行完毕,则本次测试过程结束。由上述可知,在对电信设备或软件进行测试的过程中,现有的关键字驱动技术有以下缺点(1)主要应用于GUI自动化测试,并基于Rational公司的Robot工具平台而实现,(a)它的跨平台(特指操作系统)移植性比较弱,(b)跨工具平台移植性也比较弱,(c)而且不适合应用于通信设备类产品的自动化测试。(2)测试环境的建立及恢复是在测试用例(*.xls)中实现的,这会导致测试环境冗余;并且,一量测试环境发生变化,就需要修改大量的测试用例(*.xls),从而导致测试用例(*.xls)的维护成本非常高。
技术实现思路
针对现有技术的上述缺陷,本专利技术要解决现有的测试环境实现方式会导致测试环境冗余、维护成本非常高等问题。本专利技术解决其技术问题所采用的技术方案是提供一种,其中包括以下步骤(S1)根据测试所需的测试环境和测试逻辑,将所述测试环境分解为树状结构、分级排布的多个测试集;(S2)选定位于最后一级的任一个测试集,根据所述树状结构依次确定其上级测试集、上上级测试集、...、第二级测试集、以及第一级测试集,再根据所述第一级测试集、第二级测试集、...、上上级测试集、以及上级测试集依次建立对应的测试环境;(S3)根据当前所选测试集建立对应的测试环境,再执行针对当前已建立的测试环境所配置的测试逻辑,然后恢复根据当前所选测试集所建立的测试环境;(S4)根据与当前所选测试集具有共同上级测试集且未被遍历的下一个测试集来建立对应的测试环境,再执行对应的测试逻辑,然后恢复根据其所建立的测试环境,重复本步骤,直至遍历与当前所选测试集具有共同上级测试集的所有测试集;(S5)采取与所述步骤(S2)、(S3)和(S4)类似的方式,遍历每一个位于分支末端的测试集以执行与之对应的测试逻辑,其间,针对每一个测试集,应确保根据其建立测试环境的步骤以及恢复根据其建立的测试环境的步骤都只执行一次。本专利技术所述的方法中,针对每一个测试集,当遍历至它时,先根据它建立相应的测试环境;当需要遍历与之具有共同上级的其他同级测试集、或已遍历了与之具有共同上级的其他同级测试集时,则恢复根据其建立的测试环境。在本专利技术所述方法的步骤(S1)中,可将测试环境分解为以下四种基本的测试集,具体是工具测试集,用于完成PC、测试工具、测试仪器的环境搭建及环境恢复工作;周边设备测试集,用于完成周边设备1至周边设置6的环境搭建及环境恢复工作;服务器测试集,用于完成服务器的环境搭建及环境恢复工作;被测设备测试集,用于完成被测设备的环境搭建及环境恢复工作。当然,这只是其中一种划分方式,还可以由其他划分方式。本专利技术所述的方法中,每一个测试环境可以由所述四种基本测试集中的一种或多种组成。本专利技术所述的方法中,所述测试集可通过TCL脚本来实现;同一个测试集文件中包含一个或多个测试集。由于采取了上述技术方案,本专利技术具有以下优点(1)将测试环境划分成若干测试集,使得复杂的测试环境得以简化,测试环境的搭建更加灵活,增强测试环境的共享,节省了测试环境搭建及恢复的工作量;(2)将测试环境从测试用例中分离出来,减少了测试环境的冗余,减少了由于测试环境的变化而导致的测试用例的维护工作量;(3)组成测试环境的测试集通过纯TCL脚本实现,具备跨平台(特指操作系统)、跨工具平台移植的能力。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中图1是现有技术中关键字驱动技术的运作机制示意图;图2是本专利技术中的自动化测试体系框图;图3是本专利技术一个实施例中的测试环境分类示意图;图4是本专利技术一个实施例中的测试环境与测试逻辑运行树的示意图。具体实施例方式本专利技术的实现,是基于现有技术的各项发展,例如,脚本语言(如TCL、PYTHON等)的特性,如解释执行、可嵌入、可扩展等特性,为自动化测试技术奠定了基础;同时,各种产品(如电信设备或软件)不仅提供图形界面,同时也提供命令行接口或人机接口,也为产品的自动化测试技术奠定了基础。为便于对本专利技术的理解,下面对本文中使用的一些术语作一个简单的介绍,具体如表二所示 表二 本专利技术中,测试环境在自动化测试体系框架中的位置如图2所示。下面会对图中的各部分一一进行说明。1、运行引擎(测试平台)本专利技术中,运行引擎是测试平台的一个功能块。也就是说运行引擎是可以移植的,只要其它测试平台有了运行引擎这个功能模块,就可以具备本专利技术的自动化测试的特性了。其中,测试平台用于完成测试套的编辑,还可用于选择要运行的测试套、并执行测试,然后将脚本执行控制权交由运行引擎。其中的运行引擎可用于读入测试套;在测试开始前,它根据测试套中的配置建立测试环境;在测试过程中,它根据测试套中的配置运行指定的测试逻辑及测试用例数据;在测试结束后,它会恢复测试环境,并根据测试用例的测试结果,生成本次测试未通过的测试用例组成的测试套,方便后续对未通过的测试用例的再次测试。2、测试环境本专利技术中,测试环境包括被测设备及周边设备、测试工具/测试仪器等;它用于定义测试中所需的全局数据(变量),定义测试环境下需要加载的函数库,定义测试环境的建立条件(如被测设备及周边设备、测试工具/测试仪器的初始化等),定义测试环境的恢复条件(如被测设备及周边设备资源的释放,测试工具/本文档来自技高网
...

【技术保护点】
一种通过由测试集组成的测试环境来实现产品自动测试的方法,其特征在于,包括以下步骤:(S1)根据测试所需的测试环境和测试逻辑,将所述测试环境分解为树状结构、分级排布的多个测试集;(S2)选定位于最后一级的任一个测试集,根据所述 树状结构依次确定其上级测试集、上上级测试集、…、第二级测试集、以及第一级测试集,再根据所述第一级测试集、第二级测试集、…、上上级测试集、以及上级测试集依次建立对应的测试环境;(S3)根据当前所选测试集建立对应的测试环境,再执行针对当 前已建立的测试环境所配置的测试逻辑,然后恢复根据当前所选测试集所建立的测试环境;(S4)根据与当前所选测试集具有共同上级测试集且未被遍历的下一个测试集来建立对应的测试环境,再执行对应的测试逻辑,然后恢复根据其所建立的测试环境,重复本 步骤,直至遍历与当前所选测试集具有共同上级测试集的所有测试集;(S5)采取与所述步骤(S2)、(S3)和(S4)类似的方式,遍历每一个位于分支末端的测试集以执行与之对应的测试逻辑,其间,针对每一个测试集,应确保根据其建立测试环境的步 骤以及恢复根据其建立的测试环境的步骤都只执行一次。...

【技术特征摘要】
1.一种通过由测试集组成的测试环境来实现产品自动测试的方法,其特征在于,包括以下步骤(S1)根据测试所需的测试环境和测试逻辑,将所述测试环境分解为树状结构、分级排布的多个测试集;(S2)选定位于最后一级的任一个测试集,根据所述树状结构依次确定其上级测试集、上上级测试集、...、第二级测试集、以及第一级测试集,再根据所述第一级测试集、第二级测试集、...、上上级测试集、以及上级测试集依次建立对应的测试环境;(S3)根据当前所选测试集建立对应的测试环境,再执行针对当前已建立的测试环境所配置的测试逻辑,然后恢复根据当前所选测试集所建立的测试环境;(S4)根据与当前所选测试集具有共同上级测试集且未被遍历的下一个测试集来建立对应的测试环境,再执行对应的测试逻辑,然后恢复根据其所建立的测试环境,重复本步骤,直至遍历与当前所选测试集具有共同上级测试集的所有测试集;(S5)采取与所述步骤(S2)、(S3)和(S4)类似的方式,遍历每一个位于分支末端的测试集以执行与之对应的测试逻辑,其间,针对每一个测试集,应确保根据其建立测试环境的步骤以及恢复根据其建立的测试环境的步骤都只执行一次。2.根据...

【专利技术属性】
技术研发人员:林培兴
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1