自动化测试方法及系统的制作方法

文档序号:7655932阅读:179来源:国知局
专利名称:自动化测试方法及系统的制作方法
技术领域
本发明涉及测试技术,尤其涉及能够实现统一参数配置,无须频繁进行 测试拓朴变换就能顺序执行多个测试例的自动化测试方法及系统。
背景技术
自动化测试是在测试设备,(如个人电脑PC)上运行自动化测试程序, 自动化测试程序通过串口 ( Com)或远程登录(Telnet)对被测设备进行配置, 控制数据网络测试仪进行测试帧的收发,并完成测试结果的自动获取与判断, 最终得出该脚本的通过或失败的测试结果。
如图l所示,为现有的单台被测设备的测试拓朴示意图。
被测设备可为交换机、路由器或其他待测产品。
数据网络测试仪是用于网络及设备进行性能测试与评估分析的标准测试 仪器,该种测试仪上有很多端口用于测试数据帧的发送与接收并能够对发送 与接收帧进行统计等处理,类似于PC上有很多的网卡一样。通过控制该测 试仪进行测试帧的发送并判断收帧结果来确认被测设备的相关功能是否正 确,从而达到对被测设备的测试的目的。
PC上执行自动化测试程序。自动化测试程序大部份由脚本语言实现,如 使用tcl或perl等脚本语言进行自动化测试程序编码。自动化测试程序通过 PC的Com或Telnet对被测设备进行配置,通过以太网与数据网络测试仪通 讯来控制数据网络测试仪进行测试帧的收发,根据收帧结果进行测试结果判 断。
当有多台被测设备同时参与测试时就组成了被测系统,测试时涉及到数 据网络测试仪与各台被测设备的连接,以及各台被测设备之间的连接。页
不同的自动化测试程序一般由不同的编程人员编码, 一般有各自的配置 文件。每个配置文件包含了数据网络测试仪的IP地址,使用的数据网络测试
仪的端口号,被测设备的配置方式(Com或Telnet ),参与测试的端口号等信 息,以实现对数据网络测试仪与被测设备的控制。这些信息一般通过设置相 应的变量来实现。
当需要对网络设备进行自动化测试时,需要执行该被测设备支持的所有 测试程序或脚本,当多个测试程序或脚本需要顺序执行时会存在如下问题
(1 )各个自动化测试程序或脚本有各自的配置文件,测试时需要对每个 配置文件都进行配置;当测试程序或脚本很多时,工作量很大,配置较为繁 瑣,而且各个配置文件中的有些配置信息是重复的,如数据网络测试仪的IP 地址,使用的端口等;
(2)各个自动化测试程序或脚本对测试拓朴的要求不同,如测试程序1 只对单台被测设备进行测试,测试程序2需要同时对两台被测设备进行测试, 由于没有统一的测试拓朴定义,这就需要手工进行测试拓朴变换,导致各个 测试脚本不能顺序执行,整个测试过程需要人工干预;
(3 )由于各个测试程序或脚本的测试拓朴有可能是实际测试拓朴的一部 分,此时测试人员可以对实际的测试拓朴进行人工判断,抽取出部分拓朴来 完成各个测试程序或脚本的参数配置,但这就要求测试执行人员对各个测试 程序或脚本的测试拓朴很熟悉,提高了对测试人员的要求,此外,整个测试 拓朴中没有使用到的测试拓朴还有可能对当前使用的测试拓朴产生影响。

发明内容
本发明所要解决的技术问题是,提供一种自动化测试方法,实现参数的 统一配置,无需频繁进行测试拓朴变换就能达到多个测试例顺序执行。 为了解决上述技术问题,本发明提供了一种自动化测试方法,包括 将测试程序封装成测试例由主函数统一调用
搭建自动化测试系统;所述测试系统包括测试设备、数据网络测试仪以 及被测系统,所述被测系统包括至少 一 台被测设备;
生成测试参数配置文件并选择需要执行的测试例,所述测试配置文件记 录的信息包括参数配置变量信息以及测试拓朴描述信息;
所述测试设备通过执行测试主函数调用被选择的测试例,所述测试例引 用所述测试参数配置文件中的变量信息并根据所述测试拓朴描述信息引用被 测设备的端口。
为了解决上述技术问题,本发明还提供了一种自动化测试系统,包括 由至少 一 台被测设备组成的被测系统;
数据网络测试仪,用于向所述被测设备发送测试帧并接收所述被测设备 返回的测试帧;
测试设备,用于对所述被测系统进行配置;控制所述被测设备及数据网 络测试仪;通过执行测试主函数调用测试程序封装成的测试例对所述^皮测系 统进行测试,引用测试参数配置文件记录的参数配置变量以及根据测试拓朴 描述信息引用被测设备的端口 。
上述技术方案实现了参数的统一配置,无需频繁进行测试拓朴变换就能 达到多个测试例顺序执行。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。


图1为现有的单台被测设备的测试拓朴示意图; 图2为本发明的自动化测试系统实施例结构示意图; 图3为本发明的自动化测试方法实施例流程图; 图4为本发明实施例的实际物理测试拓朴示意图; 图5为本发明实施例的测试例1所需测试拓朴示意图; 图6为本发明实施例的测试例2所需测试拓朴示意图7为本发明的自动化测试方法测试流程实施例流程图。
具体实施例方式
如图2所示,为本发明的自动化测试系统实施例结构示意图。测试设备 与数据网络测试仪通过以太网进行通讯来控制数据网络测试仪的相应端口进 行测试帧的发送与接收。数据网络测试仪的测试端口与各被测设备的相应端 口连接以实现测试帧的发送与接收。被测系统由一台或多台被测设备组成。 测试设备对被测系统进行配置,控制被测设备及数据网络测试仪,通过执行 测试主函数调用测试程序封装成的测试例对被测系统进行测试。
如图3所示,为本发明的自动化测试方法实施例流程图,包括如下步骤
步骤101、将测试程序封装成测试例由主函数统一调用;
步骤102、搭建自动化测试系统;测试系统包括测试设备、数据网络测 试仪以及被测系统,其中被测系统包括至少 一 台被测设备;
步骤103、生成测试参数配置文件并选择需要执行的测试例,该测试配 置文件记录的信息包括参数配置变量信息以及测试拓朴描述信息,其中测试 拓4卜描述信息包括被测设备与数据网络测试仪的端口连接信息以及多台被测 设备之间的端口连接信息;
步骤104、测试设备通过执行主函数调用被选择的测试例对被测设备进 行测试,测试例引用测试参数配置文件中的变量信息并根据测试拓朴描述信 息引用被测设备的端口。
本发明实施例将测试程序封装成测试例,由主函数统一调用,各测试程 序不再是独立的可执行程序,所有测试例引用统一的测试参数配置文件中的 变量,通过统一的测试拓朴描述信息引用被测设备的端口,从而实现了参数 的统一配置,且无须频繁进行测试拓朴的变换就能达到多个测试例顺序执行, 大大提高测试的自动化程度。
在搭建测试拓朴时,可将被测设备需要参与测试的端口与数据网络测试 仪或其他被测设备的相应端口进行连接。测试设备通过以太网与数据网络测
试仪连接,并通过COM或Telnet对被测设备进行配置。
测试配置文件记录的参数配置变量信息可包括数据网络测试仪的IP地 址,被测设备的配置方式等信息。测试配置文件记录的测试拓朴描述信息是 根据测试拓朴中被测设备的连接关系生成的。
当有多台被测设备参与测试时,被测设备与数据网络测试仪的端口之间 以及被测设备两两之间都可能有连接关系,而且被测设备与数据网络测试仪 之间的联接段口以及两台被测设备之间的连接端口可能有多个,此时可以使 用数据结构来表示被测系统中被测设备端口间的连接关系,例如,使用一个 三维数组,第一维表示被测设备,第二维表示与第一维被测设备连接的被测 设备,第三维表示第一维被测设备与第二维被测设备之间的端口。另外,也 可通过结构体以及链表等数据结构表示被测设备与数据网络测试仪之间以及 被测设备之间的端口连接关系。
通过使用统一的数据结构(如三维数组)来保存所有的被测设备之间的端 口连接关系,所有的测试例根据各个的测试拓朴进行测试端口的引用,而非 直接引用端口别名,这样可以实现测试端口的可变性与测试拓朴的统一描述。
由于实际的物理测试拓朴与各个测试例所需的测试拓朴可能不同,所以
拓朴进行测试。例如,实际的物理测试拓朴如图4所示,测试例1需要的测 试拓朴如图5所示,测试例2需要的测试拓朴如图6所示。当测试例1进行 测试拓朴选取时,对各台被测设备的测试端口进行判断,从中选取出实际物 理拓朴中的被测设备1的前3个端口作为该测试例的测试对象。测试例2进 行测试拓朴选取时,选取实际物理拓朴的被测设备1的前2个端口及被测设 备2的第l个端口,以及两台被测设备之间的所有端口作为该测试例的测试 对象,这样就实现了测试拓朴的共用。当测试例所需的测试拓朴不同时,只 要实际物理拓朴能够满足测试例所需,则可适当从中选择相应的端口,进行
测试,而不需在顺序执行多个测试例的过程中手工变换测试拓朴。
为了避免各个测试例只使用实际物理拓朴中的部分拓朴,没有使用到的 测试拓朴有可能对当前使用的测试拓朴产生影响,可将所有链路的初始状态
缺省为关闭状态(shutdown),各个测试例在使用该链路前先启用(no shutdown)该链路,在使用完毕后再将链路状态设为关闭状态即可,这样就 可以;f艮好的避免各个测试拓朴或链路之间的相互影响。
如图7所示,为本发明的自动化测试方法测试流程实施例流程图,包括 如下步骤
步骤201、运行主函数;
步骤202、主函数加载参数配置文件;
步骤203、主函数对被测设备初始化,关闭所有测试链路;
步骤204、主函数判断测试是否完成,即判断各测试例是否均已执行完 毕,若完成,则执行步骤210,否则,执行步骤205;
步骤205、依次调用未执行的一个测试例;被调用测试例判断测试拓朴 是否满足测试要求,若不满足要求,则结束当前测试例的测试流程,继续执 行步骤204;若测试拓朴满足要求,则执行步骤206;
步骤206、测试例根据测试需要选择测试链路,并开启选择的测试链路;
步骤207、测试例执行测试过程;在执行时,测试例引用统一的测试参 数配置文件中的变量信息并根据测试拓朴描述信息引用被测设备的端口 ;
步骤208、测试过程执行完毕后,测试例关闭测试链路;
步骤209、测试例向主函数返回测试结果,执行步骤204;
步骤210、结束整个测试流程。
本实施例在测试时,由主函数统一加载参数配置文件,对被测设备初始 化,实现了参数的统一配置;测试例引用统一的参数配置文件,无需频繁变 换测试拓朴就能实现多个测试例的顺序执行;所有链路的初始状态初始化为 关闭状态,在测试例需要测试某个链路时,开启选择的测试链路,这样可以
很好地避免各测试链路之间的相互影响。
最后应说明的是以上实施例仅用以说明本发明的技术方案,而非对其 限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术 人员应当理解其依然可以对前述各实施例所记载的技术方案进行修改,或 者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技
术方案的本质脱离本发明各实施例技术方案的精神和范围。
权利要求
1、一种自动化测试方法,其特征在于,所述方法包括将测试程序封装成测试例由主函数统一调用;搭建自动化测试系统;所述测试系统包括测试设备、数据网络测试仪以及被测系统,所述被测系统包括至少一台被测设备;生成测试参数配置文件并选择需要执行的测试例,所述测试配置文件记录的信息包括参数配置变量信息以及测试拓扑描述信息;所述测试设备通过执行主函数调用被选择的测试例,对被测系统进行测试,所述测试例引用所述测试参数配置文件中的变量信息并根据所述测试拓扑描述信息引用被测设备的端口。
2、 根据权利要求1所述的自动化测试方法,其特征在于,所述生成测 试参数配置文件具体为在测试参数配置文件中定义测试所需参数配置变量, 并根据被测设备的连接关系生成测试拓朴描述信息。
3、 根据权利要求2所述的自动化测试方法,其特征在于,所述根据被 测设备的连接关系生成测试拓朴描述信息具体为根据所述被测设备与数据 网络测试仪的端口连接关系以及各被测设备之间的端口连接关系生成表示所 述端口连接关系的的数据结构。
4、 根据权利要求3所述的自动化测试方法,其特征在于,所述数据结 构为三维数组。
5、 根据权利要求1所述的自动化测试方法,其特征在于,所述测试例 根据所述测试拓朴描述信息引用被测设备的测试端口具体为,所述测试例从 所述测试拓朴描述信息中选择测试所需端口 ,并引用该端口 。
6、 根据权利要求5所述的自动化测试方法,其特征在于,所述测试例 从所述测试拓朴描述信息中选择所需端口之前还包括,所述测试例判断所述 测试拓朴描述信息是否满足测试需求,若不满足,则结束本测试例的测试流 程。
7、 根据权利要求1所述的自动化测试方法,其特征在于,所述测试设备通过执行测试主函数调用被选择的测试例,对被测系统进行测试具体为, 所述测试设备执行主函数,加载参数配置文件,对被测设备初始化,并调用 测试例执行。
8、 根据权利要求7所述的自动化测试方法,其特征在于,所述测试例 为一个以上时,依次调用所述测试例。
9、 根据权利要求1所述的自动化测试方法,其特征在于,所述被测设 备间链路的初始状态为关闭状态,所述测试例在使用链路前先启动该测试例 所需使用的链路。
10、 一种自动化测试系统,包括由至少一台被测设备组成的被测系统, 其特征在于,所述系统还包括数据网络测试仪,用于向所述被测设备发送测试帧并接收所述被测设备 返回的测试帧;测试设备,用于对所述被测系统进行配置;控制所述被测设备及数据网 络测试仪;通过执行测试主函数调用测试程序封装成的测试例对所述#:测系 统进行测试,引用测试参数配置文件记录的参数配置变量以及根据测试拓朴 描述信息引用被测设备的端口 。
全文摘要
本发明涉及一种自动化测试方法,包括将测试程序封装成测试例由主函数统一调用;搭建自动化测试系统;所述测试系统包括测试设备、数据网络测试仪以及被测系统,所述被测系统包括至少一台被测设备;生成测试参数配置文件并选择需要执行的测试例,所述测试配置文件记录的信息包括参数配置变量信息以及测试拓扑描述信息;所述测试设备通过执行主函数调用被选择的测试例,对被测系统进行测试,所述测试例引用所述测试参数配置文件中的变量信息并根据所述测试拓扑描述信息引用被测设备的端口。本发明还涉及一种自动化测试系统。本发明实现了参数的统一配置,无需频繁进行测试拓扑变换就能达到多个测试例顺序执行。
文档编号H04L12/24GK101110734SQ200710120729
公开日2008年1月23日 申请日期2007年8月24日 优先权日2007年8月24日
发明者奇 林 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1