专利名称:自动化测试系统的利记博彩app
技术领域:
本发明涉及计算机技术领域,尤其涉及在计算机上实现支持多种脚本语言实现的 不同测试脚本的自动化测试技术。
背景技术:
自动化测试是在PC上运行自动化测试程序,自动化测试程序通过多个控制链路 (串口、Telnet或者反向Telnet)对被测设备和辅助测试设备进行配置和信息查看,建立被 测设备和辅助测试设备的通信链路,控制PC上的多个网卡进行测试帧的收发,并完成测试 结果的自动获取与判断,最终得出该测试程序的测试结果。自动化测试程序通常由脚本语言实现,在PC上运行,通过控制链路(串口、Telnet 或者反向Telnet)对被测设备(DUT,Device Under Test)进行配置,控制网卡发送和接收 测试帧,并能够对发送与接收帧进行统计、分析、判断,最终确认被测设备的相关功能是否 正确,达到对被测设备的测试的目的。常用的脚本语言包括TCL/TK、PERL、RUBY等。不同 的脚本语言实现的测试脚本,适用于测试被测设备的不同功能。而且特定的客户端只能支 持某些特定的脚本语言。常见的自动化测试系统针对被测设备的不同功能,一个被测设备要独立建立一个 测试环境,多套被测设备需组成不同的自动化测试环境,如图1所示,被测设备1需要运行 脚本语言A、B分别实现的测试脚本一起实现其自动化测试;被测设备2需要运行脚本语言 C、D分别实现的测试脚本来实现其自动化测试,被测设备3需运行脚本语言A、C分别实现 的测试脚本来实现其自动化测试;被测设备4需运行脚本语言A、C、D分别实现的测试脚本 来实现其自动化测试。那么现有技术就需要建立4个不同的测试环境,被测设备1与测试端1组成测试 系统1,其中测试端1包括自动化测试程序模块、测试脚本1 (包括脚本语言A、B分别实现的 测试脚本)以及1个或多个测试网卡;测试端2包括自动化测试程序模块、测试脚本2 (包 括脚本语言C、D分别实现的测试脚本)以及1个或多个测试网卡;测试端3包括自动化测 试程序模块、测试脚本3 (包括脚本语言A、C分别实现的测试脚本)以及1个或多个测试网 卡;测试端4包括自动化测试程序模块、测试脚本4 (包括脚本语言A、C、D分别实现的测试 脚本)以及1个或多个测试网卡。现有的自动化测试系统存在如下的一些问题1、针对被测设备的不同功能,需要多套被测设备组成不同的自动化测试环境,实施自动化测试的成本和开销较高;2、针对被测设备的不同功能,需要开发不同的自动化测试程序,自动化测试开发 的成本和开销较高;3、难以针对复杂的网络环境进行测试,不能针对实际的网络环境中的用户的各种 网络应用和数据流达到自动化测试的效果,影响了自动化测试的准确性和针对性。
发明内容
本发明所要解决的技术问题是,提供一种支持不同自动化脚本语言实现的不同脚本的自动化测试系统。本发明为解决上述技术问题所采用的技术方案是,自动化测试系统,包括服务器 与多个客户端,所述服务器包括自动化测试服务器程序模块、多个网卡;所述客户端包括自 动化测试客户端程序模块、多个脚本语言实现的不同测试脚本、多个测试网卡;各客户端上 安装的脚本语言各不相同;服务器与各客户端通过以太网相连;各客户端与各被测设备通 过以太网相连;服务器的自动化测试服务器程序模块,用于根据自动化测试任务将需要执行的测 试动作发送给客户端;服务器的多个网卡用于建立与客户端的通信链路;客户端的自动化测试客户端程序模块,用于根据需要执行的自动化测试动作调用 相应的测试脚本,完成后通知自动化测试服务器程序模块;客户端的多个测试网卡用于建 立与服务器的通信链路以及与被测设备的通信链路;接受自动化测试服务器程序模块的控 制。本发明的有益效果是,通过在服务器和客户端建立自动化测试程序,可以同时支 持多种不同的脚本语言实现的测试脚本,减少了自动化测试脚本的开发成本,提高了自动 化测试实施的灵活度;通过不同的自动化测试脚本协同进行自动化测试,减少了被测试环 境的搭建和被测试设备的占用,降低了自动化测试的成本;扩展了自动化测试适用的范围, 能够进行对多台被测试设备和多台辅助测试设备组成的复杂的网络环境的自动化测试。
图1为现有技术中的自动化测试系统示意图;图2为本发明自动化测试系统示意图;图3为本发明在复杂网络环境的自动化测试系统示意图。
具体实施例方式实施例1在如图2所示的自动化测试系统中,包括被测设备1、被测设备2、被测设备3、被测 设备4,4个被测设备通过以太网分别与客户端1、客户端2相连;客户端1与客户端2通过 以太网与服务器相连;服务器包括自动化测试服务器程序模块、多个网卡;客户端1包括自 动化测试客户端程序模块、脚本语言A实现的测试脚本A、脚本语言B实现的测试脚本B、多 个测试网卡;客户端2包括自动化测试客户端程序模块、脚本语言C实现的测试脚C、脚本 语言D实现的测试脚本D、多个测试网卡;客户端1上的自动化测试客户端程序模块监听通 信端口 10000并调用测试脚本A,监听通信端口 10001并调用测试脚本B;客户端2上的自 动化测试客户端程序模块监听通信端口 10002并调用测试脚本C,监听通信端口 10003并调 用测试脚本D。被测设备1需要运行测试脚本A、B 一起实现其自动化测试;被测设备2需要运行 测试脚本C、D来实现其自动化测试,被测设备3需运行测试脚本A、C来实现其自动化测试; 被测设备4需运行测试脚本A、C、D来实现其自动化测试。服务器的自动化测试服务器程序模块根据被测设备1的自动化测试任务需要执行的自动化测试动作发送给客户端1的 通信端口 10000,自动化测试客户端程序模块接收到包含需要执行的自动化测试动作的消 息后,调用并执行本地的测试脚本A中的函数或者方法;完成规定的自动化测试动作,然后 通知自动化测试服务器程序模块;自动化测试服务器程序模块接收到测试脚本A的自动化 测试动作完成的消息后将接下来要执行的自动化测试动作发送给客户端1上的通信端口 10001,自动化测试客户端程序模块接收到包含需要执行的自动化测试动作的消息后,调用 并执行本地的测试脚本C中的函数或者方法,完成规定的自动化测试动作,然后通知自动 化测试服务器程序模块,被测设备1的自动化测试任务完成。服务器的自动化测试服务器 程序模块根据被测设备2的自动化测试任务需要执行的自动化测试动作发送给客户端2的 通信端口 10002,自动化测试客户端程序模块调用本地的测试脚本C中的函数或者方法,执 行其中的代码,完成规定的自动化测试动作,然后通知自动化测试服务器程序模块;自动化 测试服务器程序模块接收到测试脚本C的自动化测试动作完成的消息后将接下来要执行 的自动化测试动作发送给客户端2上的通信端口 10003,自动化测试客户端程序模块接收 到包含需要执行的自动化测试动作的消息后,调用本地的测试脚本D中的函数或者方法, 执行其中的代码,完成规定的自动化测试动作,然后通知自动化测试服务器程序模块,被测 设备2的自动化测试任务完成。同样的,对于被测设备3的自动化测试任务,自动化测试服 务器程序模块分别控制客户端1的自动化测试客户端程序模块调用本地的测试脚本A,客 户端2的自动化测试客户端程序模块调用本地的测试脚本C。对于被测设备4的自动化测 试任务,自动化测试服务器程序模块分别控制客户端1的自动化测试客户端程序模块调用 本地的测试脚本A,客户端2的自动化测试客户端程序模块调用本地的测试脚本C和D。这 样就能达到不同测试脚本在一套被测试环境中,对不同被测设备进行连续自动化测试的效 果。测试动作是指针对被测试设备的一种操作,包括发送数据报文、配置和监控被测设备的 fn息ο实施例2使用不同的脚本语言实现复杂的网络环境的自动化测试需涉及到运行自动化测 试程序的服务器,运行测试脚本的多台客户端,多台被测设备和多台辅助测试设备组成的 复杂的网络环境。在如图3所示的自动化测试系统中,脚本语言A实现的测试脚本A,脚本语言B实 现的测试脚本B,脚本语言C实现的测试脚本C,脚本语言D实现的测试脚本D,脚本语言E 实现的测试脚本E,脚本语言F实现的测试脚本F,一起实现了对多台被测试设备(被测设 备1、被测设备2)和1台辅助测试设备(辅助测试设备1)组成的被测试网络环境的自动化 测试。客户端1上的自动化测试客户端程序模块监听通信端口 10000并调用测试脚本A,监 听通信端口 10001并调用测试脚本B ;客户端2上的自动化测试客户端程序模块监听通信 端口 10002并调用测试脚本C,监听通信端口 10003并调用测试脚本D ;客户端3上的自动 化测试客户端程序模块监听通信端口 10004并调用自动化测试脚本E,监听通信端口 10005 并调用自动化测试脚本F。自动化测试服务器程序模块根据被测试网络环 境需要执行的自动化测试任务,将 客户端1需要执行的自动化测试动作发送给客户端1上的通信端口 10000,自动化测试客户 端程序模块接收到包含需要执行的自动化测试动作的消息后,调用本地的测试脚本A中的函数或者方法,执行其中的代码,完成规定的测试任务,然后通知自动化测试服务器程序模 块测试脚本A的自动化测试动作成;自动化测试服务器程序模块接收到测试脚本A的自动 化测试动作完成的消息后,将接下来要执行的自动化测试动作发送给客户端1上的通信端 口 10001,自动化测试客户端程序模块接收到包含需要执行的自动化测试动作的消息后,调 用本地的测试脚本B中的函数或者方法,执行其中的代码,完成规定的测试动作然后通知 自动化测试服务器程序模块测试脚本B的自动化测试任务完成;自动化测试服务器程序模 块接收到测试脚本B的自动化测试动作完成的消息后,将要执行的自动化测试动作发送给 客户端2上的通信端口 10002,自动化测试客户端程序模块调用本地的测试脚本C中的函 数或者方法,执行其中的代码,完成规定的测试动作;然后自动化测试客户端程序模块再控 制自动化测试客户 端程序模块调用本地的测试脚本D ;测试脚本D的自动化测试动作完成 后,自动化测试服务器程序模块将要执行的自动化测试动作发送给客户端3上的通信端口 10004,自动化测试客户端程序模块调用本地的测试脚本E中的函数或者方法,执行其中的 代码,完成规定的测试动作;然后自动化测试客户端程序模块再控制自动化测试客户端程 序模块调用本地的测试脚本F ;自动化测试服务器程序模块根据被测试网络环境需要执行 的自动化测试任务反复调用测试脚本以完成各自的自动化测动作,直到完成整个自动化测 试任务。所述的客户端可能是PC机,也可能是专业的测试仪表。
权利要求
自动化测试系统,其特征在于,包括服务器与多个客户端,所述服务器包括自动化测试服务器程序模块、多个网卡;所述客户端包括自动化测试客户端程序模块、多种脚本语言实现的不同测试脚本、多个测试网卡;各客户端上安装的脚本语言各不相同;服务器与各客户端通过以太网相连;各客户端与各被测设备通过以太网相连;服务器的自动化测试服务器程序模块,用于根据自动化测试任务将需要执行的测试动作发送给客户端;服务器的多个网卡,用于建立与各客户端的通信链路;客户端的自动化测试客户端程序模块,用于根据需要执行的自动化测试动作调用相应的测试脚本,完成后通知自动化测试服务器程序模块;客户端的多个测试网卡,用于建立与服务器的通信链路以及与被测设备的通信链路;接受自动化测试服务器程序模块的控制。
2.如权利要求1所述的自动化测试系统,其特征在于,还包括多个辅助被测设备,多个 被测设备与多个辅助被测设备组成被测试网络,被测试网络与各客户端通过以太网相连。
3.如权利要求1所述的自动化测试系统,其特征在于,所述测试动作是指针对被测试 设备的操作。
4.如权利要求1-3任一项所述的自动化测试系统,其特征在于,客户端的自动化测试 客户端程序模块监听某一通信端口以调用相应的测试脚本;所述不同的通信端口和相应的 测试脚本一一对应。
5.如权利要求4所述的自动化测试系统,其特征在于,服务器的自动化测试服务器程 序模块根据被测设备的自动化测试任务,确定需要执行的自动化测试动作以及所涉及的测 试脚本,将自动化测试动作发送给客户端上和该测试脚本对应的的通信端口,自动化测试 客户端程序模块接收到包含需要执行的自动化测试动作的消息后,调用并执行本地对应的 测试脚本中的函数或者方法;完成规定的自动化测试动作,然后通知自动化测试服务器程 序模块;自动化测试服务器程序模块接收到测试脚本的自动化测试动作完成的消息。
6.如权利要求4所述的自动化测试系统,其特征在于,所述被测设备与辅助测试设备 均为路由器或交换机。
7.如权利要求4所述的自动化测试系统,其特征在于,所述客户端是测试仪。
8.如权利要求4所述的自动化测试系统,其特征在于,所述客户端是PC机。
全文摘要
本发明涉及计算机技术领域。本发明提供一种支持不同自动化脚本语言实现的不同脚本的自动化测试系统。自动化测试系统,包括被测设备、服务器与多个客户端,服务器包括自动化测试服务器程序模块;客户端包括自动化测试客户端程序模块、多个脚本语言实现的不同测试脚本;各客户端上安装的脚本语言各不相同;服务器的自动化测试服务器程序模块,用于根据自动化测试任务将需要执行的测试动作发送给客户端;客户端的自动化测试客户端程序模块,用于根据需要执行的自动化测试动作调用相应的测试脚本,完成后通知自动化测试服务器程序模块。本发明减少了自动化测试脚本的开发成本,提高了自动化测试实施的灵活度。
文档编号G06F11/36GK101847118SQ200910301079
公开日2010年9月29日 申请日期2009年3月24日 优先权日2009年3月24日
发明者李昕, 董哲 申请人:迈普通信技术股份有限公司