一种测试路由器兼容性的方法及系统与流程

文档序号:14060556阅读:2666来源:国知局
一种测试路由器兼容性的方法及系统与流程

本发明涉及路由器技术领域,尤其涉及一种测试路由器兼容性的方法及系统。



背景技术:

目前,连接路由器的终端设备的种类和数量越来越多,连接时间也越来越长。对路由器的兼容性的要求也越来越高。

对路由器的测试有很多内容,例如公开号为cn105227406a的专利公开了一种路由器综合性能的测试方法,包括步骤:步骤一,将不同测试设备通过不同连接方式接入到路由器上;步骤二,在每一个接入的所述测试设备上运行测试程序;步骤三,所述测试程序在测试完成后上传测试数据到服务器,从所述服务器端提取汇总所述测试数据,并通过所述测试数据来评价所述路由器的综合性能。该发明是对路由器综合性能的测试,通过服务器来收集测试数据,只是对数据进行汇总,可能还需要测试者做进一步地处理工作,不利于节省测试人员的工作时间。

在现代生活中,由于使用的终端设备是多种多样的,对路由器兼容性的要求很高。

对路由器兼容性的测试也是一项非常重要的测试内容。尤其是需要对路由器进行长时间多终端的兼容性测试,路由器多终端长时间兼容性测试的目的在于:探究所生产的路由器与不同类型终端(如手机,平板,笔记本,台式机等)的长时间兼容性的情况。由于用户实际使用路由器的应用场景是长时间的且为多终端的,这就要求路由器的兼容性测试必须满足长时间与多终端两个要素,对于手工测试来说,长时间意味着数据量的庞大与人力成本的巨大投入,多终端也意味着数据量的庞大以及手工测试容易产生的混淆与后期数据图表统计错误。

总的来说,在现有技术中测试路由器的兼容性的方法有如下缺点:依赖人工的操作,导致测试人员的工作量巨大,而效率不高;准确性不高,由于可能涉及长时间多终端的兼容性测试,数据量多而且复杂,人工处理数据的准确性出错的几率高;对数据的处理不够智能,往往在测试完成后,需要对大量的数据进行处理。



技术实现要素:

本发明旨在测试路由器在长时间多终端连接情况下的兼容性,以节省测试人员的工作量,保证测试的准确性。

为了解决上述问题,本发明提供了一种测试路由器兼容性的方法及系统。

所述测试路由器兼容性的方法包括:

通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息;

获取测试过程中的测试数据;

对所述测试数据进行处理,以便对所述路由器的兼容性进行分析。

进一步地,在通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间从所述路由器获取所述多个终端的连接时长信息之前,还包括:

在第一预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,在通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间从所述路由器获取所述多个终端的连接时长信息之后,还包括:

在第二预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,所述每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息,具体包括:

每隔预设时间周期,通过telnet命令从所述路由器读取所述多个终端的连接信息;

从所述连接信息中获取所述多个终端的连接时长信息。

进一步地,所述对所述测试数据进行处理包括:

对所述测试数据的文件进行格式转换;

对所述测试数据进行整合,并生成对应的图表。

所述测试路由器兼容性的系统包括:

测试模块,用于通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息;

测试数据获取模块,用于获取测试过程中的测试数据;

测试数据处理模块,用于对所述测试数据进行处理,以便对所述路由器的兼容性进行分析。

进一步地,所述测试路由器兼容性的系统还包括:

第一ping包发送模块,用于在第一预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,所述测试路由器兼容性的系统还包括:

第二ping包发送模块,用于在第二预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,所述测试模块包括:

连接信息读取子模块,用于每隔预设时间周期,通过telnet命令从所述路由器读取所述多个终端的连接信息;

连接时长信息获取子模块,用于从所述连接信息中获取所述多个终端的连接时长信息。

进一步地,所述测试数据处理模块包括:

格式转换子模块,用于对所述测试数据的文件进行格式转换;

图表生成子模块,用于对所述测试数据进行整合,并生成对应的图表。

本发明提供的测试方法有如下优点:

测试过程自动化,节省人力成本;在测试过程不需要测试人员操作,可实现在长时间多终端情况下路由器兼容性的测试。

避免了人工操作带来的出错率,由于测试时间长,如果需要手工操作,出错的概率大。

由于不需要测试人员的操作,可以在下班时间进行测试,进一步地提高测试的效率,节省测试所需要的工作时间和实验室资源。

灵活性高,可对测试条件或状态进行改变,以满足测试的需要。

此外,本发明所涉及的兼容性测试是长时间多终端的情况下完成的,更符合实际情况,测试结果更具参考性。

附图说明

图1是本发明实施例一提供的一种测试路由器兼容性的方法的流程图;

图2是本发明实施例二提供的一种测试路由器兼容性的方法的流程图;

图3是本发明实施例三提供的一种测试路由器兼容性的方法的流程图;

图4是本发明实施例四提供的一种测试路由器兼容性的系统的结构框图。

具体实施方式

以下是本发明的具体实施例并结合附图,对本发明的技术方案作进一步的描述,但本发明并不限于这些实施例。

还应当理解,此处所描述的具体实施例仅仅用于理解本发明,并不用于限定本发明。

在本发明中,包括测试用的路由器,控制终端,多个终端;所述控制终端与所述路由器建立有线连接,所述多个终端与路由器建立无线连接。

所述多个终端可以为手机、平板电脑、笔记本电脑等终端,其中,每个终端类型可以不一样。所述控制终端可以为电脑,笔记本等终端设备。

本发明提供的测试路由器兼容性的系统位于所述控制终端。

实施例一

本实施例提供一种测试路由器兼容性的方法,其流程图如图1所示,详述如下:

在测试前需要对路由器进行配置。

对于待测路由器需要配置的参数包括:路由器的ssid、密码、无线模式、信道、宽带等。

在所述控制终端对所述路由器的所述参数进行配置,可以利用robotframework实现。利用robotframework中编写的关键字对路由器的ssid、密码、无线模式、信道、宽带等参数进行自动化配置。

robotframework中编写的关键字包括:k3_intel_h_login.p.to、k3_intel_h_wifi_2.4g_config、k3_intel_h_wifi_5g_config。

进一步地,对连接路由器的所述多个终端的固定ip进行绑定。这样可以保证对应的终端在掉线重连之后还有与之前一致的ip;绑定的固定ip可以与对应终端的mac地址一一对应;此外,在多次测试中,可以保持每个终端数据的完整性与一致性,便于对比。

可选地,利用robotframework中编写的ip_bind_single等高阶关键字对所述多个终端的固定ip进行绑定。

其中,robotframework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(atdd)。

在本发明中,也可以使用其他方法实现在测试前路由器参数的配置与所述多个终端固定ip的绑定,本发明不作限制。

步骤s101,通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息。

在预定的测试时间段内,所述控制终端通过路由器与所述多个终端进行数据流的传输。所述控制终端与所述多个终端中的每个终端同时进行数据流的传输。

所述传输可以是双向的,包括从所述控制终端到所述多个终端的单向传输和从所述多个终端到所述控制终端的单向传输。

所述数据流传输可以通过利用chariot的api接口编写一系列的python函数来实现。

具体地,所述python函数包括:初始化函数(_init_)、网络检查函数(netcheck)、设置chariot日志配置函数(setconf_chr_mod)、导入接口dll函数(importdll)、初始化ixchariotapi函数(initialize)、设置保存文件名函数(setsavingfile)、创建测试函数(createtestnew)、创建pair函数(createpairnew)、设置pair的endpoint地址函数(setpairaddr)、设置pair的协议函数(setpairprotocol)、设置pair的脚本函数(setpairscript)、设置pair的脚本嵌入payload函数(setpairscriptembeddedpayload)、设置连接超时时间函数(setconnecttimeout)、添加pair到测试函数(addpairtotest)、设置pairs属性函数(setpairsattribute)、开始测试函数(starttest)、等待测试结束函数(waitfortest)、保存测试结果函数(savetest)、删除pair函数(delpair)、删除test函数(deltest)、退出test函数(exittest)。

可以在setpairsattribute函数中设置数据流传输的pair对。所需的pair对的数目可以与所述多个终端的数量相同。

上述参数与chariot软件中的配置参数对应。

通过利用chariot的api接口编写一系列的python函数实现上述过程的自动化。

在进行数据流的传输的同时,同时通过所述路由器向所述多个终端发送ping包,所述ping包每隔预设的时间发送一次。

多终端的并行ping包是通过python的threading库中的thread函数实现的。

与此同时,在所述预设的测试时间段内,每隔固定的周期查看一次所述多个终端的连接时长信息。

进一步地,通过所述连接时长信息可以判断所述多个终端是否在预设的测试时间段内是否掉过线,以及掉线的时间长度。例如每隔1h,查看一次连接时长信息,如果每次得到的连接时长也是增加了1h,则说明该终端没有掉过线;否则,该终端掉过线,可以计算出掉线时间。如果,没有掉线或者掉线的时间越短,或者掉线终端数越少,说明路由器的兼容性越好。

所述步骤s101,预定的测试时间段可以很长,例如12h,以测试出待测路由器在长时间多终端情况下的表现。

步骤s102,获取测试过程中的测试数据。

控制终端对测试过程中产生的测试数据进行收集,包括在步骤s101中的连接时长信息。

所述测试数据包括:ping包丢包率、ping包最短延时、ping包最长延时、ping包平均延时、平均吞吐量、最小吞吐量、最大吞吐量、丢失率、各终端连接时长等。

此外,这里的测试还包括获取的所述连接时长信息。

步骤s103,对所述测试数据进行处理,以便对所述路由器的兼容性进行分析。

在控制终端上,通过对数据进行处理,使得测试者方便对所述路由器的兼容性进行分析。测试者可以通过多种测试数据对所述路由器的兼容性进行分析,以获得科学的兼容性分析结果。

实施例二

本实施例提供一种测试路由器兼容性的方法,其流程图如图2所示,详述如下:

步骤s201,在第一预设时间段内,通过所述路由器向所述多个终端发送ping包。

步骤s202,通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息;

步骤s203,在第二预设时间段内,通过所述路由器向所述多个终端发送ping包。

本实施例增加了步骤s201和步骤s203,都是从所述控制终端向所述多个终端发送ping包,这样可以比较执行步骤s201的前后ping包的表现,通过对应的参数对比来判断。所述第一预设时间段和所述第二预设时间段可以是一样的。

进一步地,在对应的时间内每隔预设的时间周期向所述多个终端发送ping包。

所述每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息,具体包括:

每隔预设时间周期,通过telnet命令从所述路由器读取所述多个终端的连接信息;

从所述连接信息中获取所述多个终端的连接时长信息。

可选地,通过调用python的telnetlib库实现的,通过telnet命令wl-ieth2sta_infomac\r\n来读取终端连接信息,再通过python的re库中的findall和split函数匹配出连接时长信息。

进一步地,通过连接时长信息可以判断对应的终端有没有掉线,进而判断路由器的兼容性。具体地,参见实施例一中相关的描述。

步骤s204,获取测试过程中的测试数据;

步骤s205,对所述测试数据进行处理,以便对所述路由器的兼容性进行分析。

步骤s204和步骤s205已经在实施例一中详述了,这里不再赘述。

实施例三

本实施例提供一种测试路由器兼容性的方法,其流程图如图3所示,详述如下:

步骤s301,通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息。

步骤s302,获取测试过程中的测试数据。

步骤s303,对所述测试数据的文件进行格式转换。

由于各种测试数据的格式不一定相同,所以需要对数据的文件格式进行转换,以便后续的处理。

例如,使用chariot打流的最初是以tst的格式保存,需要将tst格式转换为csv格式,进而可以使用excel软件对数据进行处理。该过程可以通过调用ixiachariot自带的fmttst.exe应用程序实现。此外,还可以对csv格式的数据文件做进一步地处理,转换成excel的专用格式,可以通过调用python自带的csv库和python支持的xlwt库实现。

步骤s304,对所述测试数据进行整合,并生成对应的图表。

本步骤可以基于excel软件来实现,将转换格式后的数据文件导入到excel软件中,并生成对应的图表。

上述过程可以通过调用python的xlrd、xlwt、xlsxwriter库来实现。

应当理解,上述的步骤并没有严格的执行顺序,所有可预见并且不影响功能的实现的变化都应该在本发明的保护范围内。

实施例四

本实施例提供一种测试路由器兼容性的系统,其结构框图如图4所示,详述如下:

所述测试路由器兼容性的系统包括:

测试模块410,用于通过路由器与多个终端进行数据流传输,同时通过所述路由器向所述多个终端发送ping包,并每隔预设时间周期从所述路由器获取所述多个终端的连接时长信息;

测试数据获取模块420,用于获取测试过程中的测试数据;

测试数据处理模块430,用于对所述测试数据进行处理,以便对所述路由器的兼容性进行分析。

进一步地,所述测试路由器兼容性的系统还包括:

第一ping包发送模块,用于在第一预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,所述测试路由器兼容性的系统还包括:

第二ping包发送模块,用于在第二预设时间段内,通过所述路由器向所述多个终端发送ping包。

进一步地,所述测试模块410包括:

连接信息读取子模块,用于每隔预设时间周期,通过telnet命令从所述路由器读取所述多个终端的连接信息;

连接时长信息获取子模块,用于从所述连接信息中获取所述多个终端的连接时长信息。

进一步地,所述测试数据处理模块430包括:

格式转换子模块,用于对所述测试数据的文件进行格式转换;

图表生成子模块,用于对所述测试数据进行整合,并生成对应的图表。

由于本实施例提供的确定路由器升级时间的系统应用于实施例一至实施例三中的所述的确定路由器升级时间的方法,相关的内容参考实施例一至实施例三,这里不再赘述。

在本申请所提供的实施例中,应该理解所描述的方法和系统都是示意性的,在实际实施过程中通过调整可以有所差别。

另外,各功能单元或模块的具体名称也只是为了便于相互区分,并不用于本发明的保护范围。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1