技术领域
[0001] 本申请涉及网关技术领域,特别是涉及一种网关测试方法和网关测试系统。
相关背景技术
[0002] 网关,是一种用于连接不同网络或网络段的设备。网关在计算机网络和通信系统中起着重要作用,可以实现数据包的转发和路由。
[0003] 由于网关支持多种通讯方式,接口复杂。此外,网关设备部署多种智能算法,在网关设备组装下线后,需要分别进行硬件测试和软件测试,同时更新网关设备的软件版本,测试流程较为复杂。
[0004] 传统的网关测试需要连接额外的测试设备,并在测试设备上部署测试程序,使得目前的网关测试方法比较繁琐,测试效率低。
具体实施方式
[0042] 为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的实施例。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使本申请的公开内容更加透彻全面。
[0043] 除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
[0044] 可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一电阻称为第二电阻,且类似地,可将第二电阻称为第一电阻。第一电阻和第二电阻两者都是电阻,但其不是同一电阻。
[0045] 可以理解,以下实施例中的“连接”,如果被连接的电路、模块、单元等相互之间具有电信号或数据的传递,则应理解为“电连接”、“通信连接”等。
[0046] 可以理解,“至少一个”是指一个或多个,“多个”是指两个或两个以上。“元件的至少部分”是指元件的部分或全部。
[0047] 在此使用时,单数形式的“一”、“一个”和“所述/该”也可以包括复数形式,除非上下文清楚指出另外的方式。还应当理解的是,术语“包括/包含”或“具有”等指定所陈述的特征、整体、步骤、操作、组件、部分或它们的组合的存在,但是不排除存在或添加一个或更多个其他特征、整体、步骤、操作、组件、部分或它们的组合的可能性。同时,在本说明书中使用的术语“和/或”包括相关所列项目的任何及所有组合。
[0048] 在一个实施例中,请参照图1,提出一种网关测试方法,该方法包括以下步骤102至步骤106。其中:
[0049] 步骤102,确定目标网关中待检测的目标端口,获取目标端口的目标端口类型,其中,目标端口类型包括开关量信号端口、收发信号端口或差分信号端口中的一种或多种。
[0050] 目标网关为本实施例中需要进行测试的网关。网关设备支持多种通讯方式且接口复杂,在网关设备中还会部署多种算法。当网关设备组装下线后,传统测试方法需要将目标网关与专门的测试设备连接,以实现对网关复杂功能的测试。然而,测试设备在对目标网关进行测试时,需先通过固定模块将目标网关与测试设备连接,对于无法通过固定模块连接的接口,需要手动连接目标网关和测试设备,使得通过测试设备对目标网关测试时,操作繁琐复杂。同时,测试设备的成本较高,在网关版本升级时需要同步升级测试设备,维护成本高。
[0051] 本申请提出一种操作简便,成本低廉的网关测试方法。在测试时先确定待检测的目标端口,以及目标端口的端口类型。此处的目标端口包括开关量信号端口、收发信号端口或差分信号端口中的一种或多种。对于目标网关中如开关量信号端口、收发信号端口或差分信号端口的输入输出端口或通信端口,本实施例可以利用网关内部的资源实现测试,以简化对目标网关的测试流程。
[0052] 步骤104,在目标网关中,确定与目标端口类型相同的测试端口,根据目标端口与测试端口形成测试回路。
[0053] 将与目标端口类型相同的端口作为测试端口,根据端口类型的不同,将目标端口与测试端口通过不同的形式连接,形成测试回路。
[0054] 步骤106,基于测试回路进行测试,得到测试结果,测试结果用于确定目标端口的工作状态。
[0055] 本申请将上位机取代复杂的测试设备,利用目标网关的内部资源,将待检测的目标端口与目标网关中端口类型相同的测试端口连接,降低了目标网关的测试成本,还简化了对目标网关的测试流程,进而提高了对目标网关的测试效率,在目标网关的版本更新后也可以实时的进行测试,适用性强。
[0056] 在一个示例性的实施例中,当目标端口类型为开关量信号端口时,根据目标端口与测试端口形成测试回路,包括:在多路开关量信号端口中,确定目标输入端口与目标输出端口;在目标输入端口为目标端口的情况下,将目标输出端口作为测试端口;在目标输出端口为目标端口的情况下,将目标输入端口作为测试端口;将目标输出端口的与电源端口连接,目标输出端口的另一端在目标网关内部与开关元件的第一端连接;其中,电源端口与目标网关的内置电源连接;将开关元件的第二端与目标输入端口连接,形成测试回路。
[0057] 开关量信号端口是数字信号端口的一种,通过高低电平表示开关量或数字量信号。在开关量信号端口中,数字输入端口(简称DI)用于接收外部开关量或数字量信号。数字输出端口(简称DO)用于通过开关元件控制外部开关状态。目标网关中一般包括多路数字输入端口和数字输出端口。在对开关量信号端口测试时,先将一路数字输入端口和一路数字输出端口组成一组开关量信号端口,通过对每组开关量信号端口的测试实现对目标网关中开关量信号端口的测试。
[0058] 示例性的,每组开关量信号端口均包括一路数字输入端口和一路数字输出端口。将待检测组的数字输入端口和数字输出端口作为目标输入端口与目标输出端口。此时,若需要对目标输入端口作为目标端口,则将目标输出端口作为测试端口,若需要对目标输出端口作为目标端口,则将目标输入端口作为测试端口。
[0059] 请参照图2所示的测试连接示意图,为一组数字输入端口和数字输出端口的示例。如图2所示,DO和DI分别为目标端口和测试端口。将DO和DI串联,形成测试回路。具体的,如图2所示,将目标输出端口的一端与电源端口连接,另一端在目标网关内部与开关元件的第一端连接;将开关元件的第二端与目标输入端口连接,形成测试回路。同时,电源端口与目标网关的内置电源连接。目标网关的内置电源可以是5V电源。开关元件可以是继电器、开关等可以根据控制指令导通或闭合的元件。
[0060] 在一个进一步的实施例中,基于测试回路进行测试,得到测试结果,包括:切换开关元件的导通状态,并检测不同导通状态下目标输入端口的测试信号,根据测试信号得到测试结果。
[0061] 请继续参阅图2,在将开关量信号端口串联后,由于测试回路中包括开关元件,则可以通过控制开关元件的导通状态,以获取不同导通状态下的测试信号。进而可以根据测试信号得到测试结果。
[0062] 可以理解,此时的检测结果为一组开关量信号端口的状态。即,若根据测试信号确定状态正常,则表示目标端口与测试端口均正常工作;若根据测试信号确定状态异常,则表示目标端口或测试端口中至少一个存在异常。对于异常的开关量信号端口,可以再次通过交叉分组实现更精准的测试,如将状态异常的开关量信号端口组中的端口与其他测试正常的开关量信号端口互联,以进一步确定异常的端口。
[0063] 在一个示例性的实施例中,根据测试信号得到测试结果,包括:在开关元件闭合的情况下,若测试信号为高电平,则表示目标输入端口与目标输出端口正常工作;在开关元件断开的情况下,若测试信号为低电平,则表示目标输入端口与目标输出端口正常工作。
[0064] 由于开关量信号端口以高低电平作为输出信号。在开关元件在不同导通状态时,获取目标输入端口的测试信号。在开关元件闭合的情况下,由于测试回路与内置电源连接,若在目标输入端口检测到的测试信号为高电平,则表示目标端口和测试端口均正常工作,若检测信号为低电平,则表示目标端口或测试端口中至少存在一个端口工作异常。
[0065] 同理,在开关元件断开的情况下,由于测试回路与内置电源断路,若在目标输入端口检测到的测试信号为低电平,则表示目标端口和测试端口均正常工作,若检测信号为高电平,则表示目标端口或测试端口中至少存在一个端口工作异常。检测异常时,可以通过调整开关量信号端口的连接形状进一步确定异常的端口。
[0066] 在另一个实施例中,当目标端口类型为收发信号端口时,确定与目标端口类型相同的测试端口,根据目标端口与测试端口形成测试回路,包括:确定第一收发通道对应的第一发送端口和第一接收端口,并确定第二收发通道对应的第二发送端口和第二接收端口;在第一收发通道对应的端口为目标端口的情况下,将第二收发通道对应的端口作为测试端口;在第二收发通道对应的端口为目标端口的情况下,将第一收发通道对应的端口作为测试端口;将第一发送端口与第二接收端口连接,并将第一接收端口与第二发送端口连接,形成测试回路。
[0067] 请参照图3,收发信号端口可以是RS232串行通讯端口,RS232端口可以使目标网关实现与外部设备之间的数据传输。收发信号端口包括数据发送端口和数据接收端口,当存在多个数据发送端口或多个数据接收端口时,多个数据发送端口或多个数据接收端口可同时进行数据的发送或接收。
[0068] 以RS232串行通讯端口为例,将不同通道之间的数据发送端口和数据接收端口交叉互连,形成测试回路。例如,确定第一收发通道对应的第一发送端口和第一接收端口,并确定第二收发通道对应的第二发送端口和第二接收端口,将第一发送端口与第二接收端口连接,并将第一接收端口与第二发送端口连接,形成测试回路。此时,不同收发通道对应的端口互为目标端口和测试端口,即若第一收发通道对应的端口为目标端口,则将第二收发通道对应的端口作为测试端口;若第二收发通道对应的端口为目标端口,则将第一收发通道对应的端口作为测试端口。
[0069] 在一个进一步的实施例中,基于测试回路进行测试,得到测试结果,包括:在第一发送端口发送第一测试报文,并将第二接收端口接收到的报文与第一测试报文对比,得到测试结果;或者,在第二发送端口发送第二测试报文,并将第一接收端口接收到的报文与第二测试报文对比,得到测试结果。
[0070] 本实施例将不同通道的收发信号端口交叉连接,以实现对不同通道的收发信号端口的状态检测。基于测试回路的连接,在对第一发送端口或第二接收端口进行检测时,可以在第一发送端口发送第一测试报文,在第二接收端口接收报文,若接收到的报文与第一测试报文相同,则表示第一发送端口和第二接收端口均正常工作,若接收到的报文与第一测试报文不同,则表示第一发送端口或第二接收端口至少一个端口工作异常。此时,可以将工作异常的收发信号端口与其他正常工作的收发信号端口互连,以进一步确定异常的端口。
[0071] 同理,第一接收端口或第二发送端口的检测方法与上述第一发送端口或第二接收端口的检测方法基本相同,此处不再赘述。
[0072] 在另一个实施例中,当目标端口类型为差分信号端口时,确定与目标端口类型相同的测试端口,根据目标端口与测试端口形成测试回路,包括:确定第一差分通道对应的第一正极端口和第一负极端口,并确定第二差分通道对应的第二正极端口和第二负极端口;在第一差分通道对应的端口为目标端口的情况下,将第二差分通道对应的端口作为测试端口;在第二差分通道对应的端口为目标端口的情况下,将第一差分通道对应的端口作为测试端口;将第一正极端口和第二正极端口连接,并将第一负极端口和第二负极端口连接,形成测试回路。
[0073] 请继续参照图3,差分信号端口可以是RS485串行通讯端口。RS485端口使目标网关通过差分信号的传输,实现抗干扰的数据传输。在差分通道中,差分信号端口包括与内部电源连接的正极端口,以及接地的负极端口。
[0074] 以RS485串行通讯端口为例,将不同差分通道之间的端口并联,形成测试回路。例如,确定第一差分通道对应的第一正极端口和第一负极端口,并确定第二差分通道对应的第二正极端口和第二负极端口,将第一正极端口和第二正极端口连接,并将第一负极端口和第二负极端口连接,形成测试回路。此时,不同差分通道的端口互为目标端口和测试端口,即若第一差分通道对应的端口为目标端口,则将第二差分通道对应的端口作为测试端口;若第二差分通道对应的端口为目标端口,则将第一差分通道对应的端口作为测试端口[0075] 在一个进一步的实施例中,基于测试回路进行测试,得到测试结果,包括:在第一正极端口发送第三测试报文,并将第二负极端口接收到的报文与第三测试报文对比,得到测试结果;或者,在第二正极端口发送第四测试报文,并将第一负极端口接收到的报文与第四测试报文对比,得到测试结果。
[0076] 本实施例将不同差分通道的正极端口连接,将不同差分端口的负极端口连接,以实现对不同差分通道的差分信号端口的状态检测。基于测试回路的连接,在对第一正极端口或第二负极端口检测时,可以在第一正极端口发送第三测试报文,在第二负极端口接收报文,若接收到的报文与第三测试报文相同,则表示第一正极端口和第二负极端口均正常工作,若接收到的报文与第三测试报文不同,则表示第一正极端口或第二负极端口至少一个端口工作异常。当检测到端口异常时,可以将工作异常的差分信号端口与其他正常工作的差分信号端口并联,以进一步确定异常的端口。
[0077] 同理的,第一负极端口或第二正极端口的检测方法与上述第一正极端口或第二负极端口的检测方法基本相同,此处不再赘述。
[0078] 在一个其他的实施例中,该方法还包括:确定目标网关其他的检测端口,将目标网关与检测端口对应的负载连接;通过上位机获取目标网关在连接负载后的测试数据,根据测试数据确定检测端口的工作状态。
[0079] 对于输入输出端口以外的其他端口的检测时,将检测端口直接与负载连接,以替代传统与测试设备连接并测试的方法,降低网关测试软件的开发难度,缩短开发周期,简化测试流程的同时还提高了测试效率,降低测试成本。
[0080] 示例性的,在对USB端口检测时,将目标网关的USB端口插入U盘等USB外设。通过与目标网关连接的上位机与目标网关的数据交互,调取目标网关的USB设备树,若检测到连接的USB外设,则表示目标网关的USB端口工作正常。通过上位机获取USB端口的通讯速率,以检测USB端口速率是否满足速率标准。
[0081] 在对5G端口进行检测时,在目标网关插入SIM卡,将目标网关的天线旋入SMA无线端口。通过与目标网关连接的上位机与目标网关的数据交互,确定5G模组的连接状态、SIM卡运行商、5G信号质量和通讯速率等网络数据,以检测5G端口的工作状态。
[0082] 在对RJ45接口进行检测时,在目标网关设置多个RJ45接口,将其中一个设为WAN口,支持WAN/LAN自适应,用于在测试时将目标网关通过WAN口连接上位机。其余RJ45接口均为LAN口,支持PoE功能,满足IEEE 802.3at标准。测试时,网关接入PoE摄像头,如果握手成功,目标网关将会为其分配IP地址,设置在上位机中的测试程序测试各网口的物理连接状态和对应RJ45网口物理层的运行状态,以实现对RJ45网口的工作状态检测。
[0083] 在对MicroSD Card接口进行检测时,在MicroSD Card接口插入MicroSD卡后。通过与目标网关连接的上位机与目标网关的数据交互,调取文件挂载信息确定MicroSD Card接口上MicroSD卡的连接状态,以实现对MicroSD Card接口的工作状态检测。
[0084] 在一些其他的实施例中,在对目标网关进行测试时,先通过目标网关的WAN接口与上位机连接,并建立通讯。通过上位机访问网关云管理平台,对目标网关的软件进行版本更新,当完成软件更新后再开始执行对目标网关的测试。
[0085] 测试时,上位机中的测试程序首先要获取并记录目标网关当前的识别码和软件版本号,再开始测试端口功能,并记录相应测试数据和测试结果。
[0086] 由于目标网关中的软件需要时常更新维护,随着软件版本的迭代,在使用测试设备进行测试时也需要对测试设备进行更新。本申请提出的测试方法不需要与额外的测试设备连接,基于目标网关内部的通道资源,即可实现对目标网关的测试,对硬件依赖较低。本申请在测试时仅需要与上位机连接,响应迅速。在使用本实施例的测试方法测试前还可以对目标网关的软件进行更新,操作简单易于实现,还简化了对目标网关的测试流程,进而提高了对目标网关的测试效率,降低了测试成本。即使在目标网关的版本更新后也可以实时的进行测试,适用性强。
[0087] 应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0088] 基于同样的发明构思,在一个实施例中,本申请实施例还提供了一种网关测试系统,该系统包括上位机,该上位机根据上述实施例所涉及的网关测试方法实现对目标网关的测试。
[0089] 本实施例网关测试系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故本实施例网关测试系统的具体限定可以参见上文中对于网关测试方法的限定,在此不再赘述。
[0090] 示例性地,该上位机可以包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该上位机的处理器用于提供计算和控制能力。该上位机的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储测试数据。该上位机的输入/输出接口用于处理器与目标网关之间交换信息。该计算机程序被处理器执行时以实现一种网关测试方法。
[0091] 在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述网关测试方法的步骤。
[0092] 在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述网关测试方法的步骤。
[0093] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read‑Only Memory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
[0094] 在本说明书的描述中,参考术语“有些实施例”、“其他实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特征包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性描述不一定指的是相同的实施例或示例。
[0095] 以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0096] 以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。