一种无线设备并发跑流的自动化测试系统及测试方法与流程 您所在的位置:网站首页 pywifi安装 一种无线设备并发跑流的自动化测试系统及测试方法与流程

一种无线设备并发跑流的自动化测试系统及测试方法与流程

2023-04-06 23:44| 来源: 网络整理| 查看: 265

一种无线设备并发跑流的自动化测试系统及测试方法与流程

1.本发明涉及无线设备测试技术领域,特别涉及一种无线设备并发跑流的自动化测试系统及测试方法。

背景技术:

2.现有的无线设备并发跑流测试方法利用testcenter c50和ixia veriwave模拟多用户压力跑流,通过仪器制造大量的数据流量验证无线产品的并发性能和稳定性。3.现有技术存在以下两种测试方式:4.(1)两台无线pc进行ixchariot(应用层性能测试软件)跑流;问题:一个用户建立无线连接跑流,流量足够大但是没有多个射频数据交互;与实际用户使用场景相差较大;数据吞吐额定无瞬间大流量的突发。5.(2)在带机量房内,使用多台手机、平板等设备进行同时连接及挂机测试;问题:测试设备需求较多,测试成本偏高;测试环境搭建复杂测试周期拉长,且较难手动完成并发大流量的测试操作。6.上述测试方式的缺陷:7.1、测试仪器只能使用1到2个射频模拟多用户进行测试,与实际用户使用场景有差异;8.2、仪器购买成本和维护成本较高;需人工手动完成大部分操作且操作较为繁琐,耗时较长,导致人工成本较高;9.3、无法达到反复重关联和并发测试的效果;10.4、只能做单项测试,较难耦合到解决方案环境中。

技术实现要素:

11.本发明提供一种无线设备并发跑流的自动化测试系统及测试方法,旨在借助python脚本控制多张网卡对dut进行连接和数据突发,最终验证dut的稳定性和可靠性。12.本发明提供一种无线设备并发跑流的自动化测试系统,包括pc服务端、pc控制端、无线网卡、被测设备,所述pc服务端通过有线连接被测设备的网络接口,所述pc控制端通过有线连接若干个无线网卡的通讯接口,若干个所述无线网卡,所述pc服务端设有对被测设备进行性能测试的测试工具,所述pc控制端设有控制无线网卡运行的控制工具,所述pc控制端通过控制工具控制若干个无线网卡分别对被测设备进行连接和跑流,并通过pc服务端的测试工具验证被测设备的稳定性和可靠性。13.本发明还提供一种无线设备并发跑流的自动化测试方法,包括以下步骤:14.s1.搭建测试环境后,并配置所有设备的无线设置;15.s2.设置pc控制端的控制脚本,并在pc控制端上安装跑流工具和搭建驱动环境;16.s3.通过控制脚本控制pc控制端进行并发连接与并发跑流;17.s4.在设定时间内,循环关联ssid与并发跑流测试,并记录测试次数。18.作为本发明的进一步改进,所述步骤s1具体包括:19.s11.搭建测试环境,建立pc服务端与被测设备的有线连接,pc控制端与无线网卡的有线连接;20.s12.配置所有设备的无线设置,配置包括加密方式和密钥信息,且加密方式默认选用wpa2-psk。21.作为本发明的进一步改进,所述步骤s2具体包括:22.s21.使用python作为pc控制端的控制脚本语言;23.s22.安装ixchariot跑流工具,并将根目录加入路径环境变量;24.s23.在pc控制端的动态链接依赖库导入依赖包;25.s24.通过pip install命令安装所需python库文件;26.s25.在pc控制端安装无线网卡驱动和hub扩展驱动,接入网卡后配置网卡为静态地址。27.作为本发明的进一步改进,所述步骤s3中,通过python脚本控制pc控制端进行并发连接与并发跑流,具体包括:28.s31.将跑流所需的配置项填入配置文件内;29.s32.pc控制端通过pywifi库进行无线网卡的连接,并将连接步骤函数加入线程池中,及利用多线程完成并发连接操作;30.s33.pc控制端通过python加载dll动态链接库文件,自定义函数继承动态链接库调用;31.s34.调用python库函数方法,脚本运行时加载配置文件中的参数生成一个wlan跑流pair数,设置跑流时间;32.s35.按设定时间执行后,自动停止跑流,记录跑流结果,完成单次测试流程;且ixchariot环境初始化。33.作为本发明的进一步改进,所述步骤s3中还包括以下两种情形:34.s36.对于不适合c语言调用场景,利用tcl调用方案:直接使用python中自带的tkinter库调用ixchariot内置chariotext.dll文件,以实现自动化跑流;35.s37.对于不适合ixchariot使用的场景,提供iperf自动化跑流实现方法:利用多进程开启多个iperf运行窗口,每个窗口传入iperf命令及配置文件中的参数实现并发跑流。36.作为本发明的进一步改进,所述步骤s4中,循环关联ssid与并发跑流测试,具体包括:37.s41.在步骤s3的单次测试流程中,重点关注数据的突发攻击,实验环境下吞吐总量能达到设备峰值;38.s42.单次测试完并发数据后,通过python控制pc控制端断开所有无线网卡的连接;修改无线网卡mac地址后重新同时并发连接被测设备的无线网络;39.s43.重复执行以上操作,长时间挂机并记录测试次数。40.作为本发明的进一步改进,该方法还包括步骤:41.s5.若因环境原因导致测试执行失败时,初始化环境重新执行脚本;若遇到设备异常时,立刻控制终止脚本运行,保留出现问题的环境。42.作为本发明的进一步改进,该方法还包括步骤:43.s6.通过logguru库记录脚本运行日志,通过串口记录被测设备的运行日志信息,并重点记录被测设备cpu、内存的使用率。44.作为本发明的进一步改进,跑流测试过程中,在稳定的实验环境下,每次跑流结果均能达到协商速率的70%,在实际挂机情况下,取所在环境的实际平均值,运行期间流量波动不超过20%时,判断被测设备测试合格。45.本发明的有益效果是:(1)模拟多用户同时连接或断开无线,同时并发跑大流量;能模拟真实用户实际使用场景;(2)使用自动化脚本完成全部测试工作,提升测试效率和测试数据准确性,降低人工成本;(3)整套环境主要是一台pc使用usb+hub扩展连接多张无线网卡,环境搭建简单高效,测试设备成本低;(4)模拟终端的个数可以通过配置文件随意变更,可以满足不同的测试场景和测试需求;(5)放置到解决方案环境中,可增加解决方案环境多样性,更容易发现或复现稳定性问题和可靠性问题。附图说明46.图1是本发明中无线设备并发跑流自动化测试系统的结构拓扑图。具体实施方式47.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。48.本发明是一种无线设备并发跑流的测试方案,该套测试方案考虑多台设备并发大流量时对无线设备稳定性和可靠性的影响,可在实验室环境下对无线路由器、ap等各类无线网络产品进行测试;重点关注cpu主频低、内存小的产品,对于数据突发处理相对较差,在该套环境中重点验证dut对数据的并发大流量处理。49.本发明的一种无线设备并发跑流的自动化测试系统按照图1进行测试环境搭建,其包括pc服务端、pc控制端、无线网卡、被测设备,pc服务端通过有线连接被测设备的网络接口,pc控制端通过有线连接若干个无线网卡的通讯接口,若干个无线网卡,pc服务端设有对被测设备进行性能测试的测试工具,pc控制端设有控制无线网卡运行的控制工具,pc控制端通过控制工具控制若干个无线网卡分别对被测设备进行连接和跑流,并通过pc服务端的测试工具验证被测设备的稳定性和可靠性。50.pc服务端连接被测dut的lan口,pc控制端通过usb+hub扩展接入多张无线网卡。如图1所示,pc服务端充当ixchariot的服务端,pc控制端用于控制无线网卡连接和跑流。51.本发明的一种无线设备并发跑流的自动化测试方法,包括以下步骤:52.s1.如图1的拓扑搭建完成后,需要配置好设备的无线设置,按需求配置加密方式和密钥信息等,加密方式默认选用wpa2-psk。53.参照拓扑图1,在pc控制端上通过python自动化测试,具体如下:54.s2.在pc控制端上安装工具和环境步骤如下:55.①脚本语言:python3.8;56.②安装ixchariot6.7跑流工具,并将根目录加入path环境变量;57.③在pc控制端的动态链接依赖库导入依赖包;58.④通过pip install命令安装其他所需python库文件,如pywifi、loguru、pywin32等;59.⑤pc控制端安装无线网卡驱动和hub扩展驱动,接入网卡后配置网卡为静态地址。60.s3.使用python脚本控制pc控制端进行并发连接与并发跑流步骤如下:61.①按要求将配置填入config.ini配置文件内,具体配置项包括无线网卡名称、无线名称、无线密码、跑流lan端地址、跑流wlan端地址、跑流脚本选择、跑流协议选择、一个wlan跑流pair数、每次跑流时间;62.②pc控制端通过pywifi库可实现无线网卡的连接,将连接步骤函数加入线程池中,及利用多线程完成并发连接操作;63.③pc控制端通过python加载dll动态链接库文件,自定义函数继承动态链接库调用;64.④调用上一步骤python库函数方法,脚本运行时加载配置文件中的e1、e2、script、protocol和paorcount等参数生成ixchariot的pair,设置option跑流时间;65.⑤按设定时间后,自动停止跑流,记录跑流结果;ixchariot环境初始化66.⑥对于不适合c语言调用场景,提供利用tcl调用方案:即直接使用python中自带的tcl解释器(tkinter库)调用ixchariot内置chariotext.dll文件,使用其中的方法实现自动化跑流67.⑦对于不适合ixchariot使用的场景,提供iperf自动化跑流实现方法:利用多进程开启多个iperf运行窗口,每个窗口传入iperf命令及配置文件中的参数实现并发跑流。68.s4.循环关联ssid与并发跑流测试:69.①步骤s3已经完成了单次的测试流程;该步骤要重点关注数据的突发攻击,实验环境下吞吐总量能达到设备峰值,大约为协商速率的70%;70.②在步骤s3的基础上,测试完一次的2分钟并发数据后,再通过python控制pc2断开所有无线网卡的连接;修改无线网卡mac地址后重新同时并发连接被测dut的无线;71.③重复执行以上操作,长时间挂机并记录测试次数。72.s5.加入容错机制,在因环境原因导致执行失败时,初始化环境重新执行脚本,如在环境干扰较大时可能导致无线连接失败,此时会反复连接直到连接成功;在遇到设备异常时,立刻控制终止脚本运行,保留出现问题的环境;方便后期定位排除问题。73.s6.通过logguru库记录脚本运行日志,通过rs232串口记录被测dut的运行日志信息,重点记录dut的cpu、内存的使用率。74.本测试结果的判断标准为:75.(1)无线并发关联跑流长时间运行后,dut的cpu和内存不会出现异常高的现象,整机运行正常,无死机或者重启现象;76.(2)长时间运行时,不会出现因设备原因导致无线关联不上或关联后使用异常的情况;77.(3)在稳定的实验环境下,每次跑流结果均能达到协商速率的70%,在实际挂机情况下,取所在环境的实际平均值,要求运行期间流量波动不超过20%。78.本发明的方案具有以下优势:79.(1)此测试环境几乎全部使用python进行开发适配,适配完成后任何技术层级的测试人员都可以进行单独测试,且可以通过修改配置文件来完成具体测试项的修改,操作兼容,可维护性高;80.(2)该测试环境使用多张网卡进行连接测试,对比测试仪器的一个或者两个radio更有可信度,且更贴近于用户场景,也补全了多radio性能测试和突发数据测试的缺失;81.(3)提供多种自动化跑流方案,可选用tcp或udp或tcp+udp的流量模型;82.(4)易加入到各种解决方案环境使用,在各种解决方案环境中都可以直接嵌套进入场景中进行背景测试环境的添加。83.以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有