CN118069503A - 驱动文件的测试方法、系统、存储介质及电子设备 - Google Patents
驱动文件的测试方法、系统、存储介质及电子设备 Download PDFInfo
- Publication number
- CN118069503A CN118069503A CN202410139704.0A CN202410139704A CN118069503A CN 118069503 A CN118069503 A CN 118069503A CN 202410139704 A CN202410139704 A CN 202410139704A CN 118069503 A CN118069503 A CN 118069503A
- Authority
- CN
- China
- Prior art keywords
- line card
- equipment
- test
- file
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 227
- 238000000034 method Methods 0.000 title claims abstract description 45
- 230000006870 function Effects 0.000 claims abstract description 47
- 238000004891 communication Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 17
- 230000008571 general function Effects 0.000 claims description 14
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000010998 test method Methods 0.000 description 2
- 241000282326 Felis catus Species 0.000 description 1
- 238000011990 functional testing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Landscapes
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
本申请实施例提供了一种驱动文件的测试方法、装置、存储介质及电子装置,其中,该驱动文件的测试方法包括:确定出与线卡设备的线卡卡槽相连通的待测试线卡;基于线卡卡槽对应的配置文件确定出待测试线卡的线卡配置信息;基于线卡配置信息和线卡卡槽所支持的线卡类型生成驱动文件,其中,驱动文件用于根据不同线卡测试序列为线卡设备提供设备功能;使用测试用例对使用驱动文件所提供的设备功能进行测试,得到测试结果。
Description
技术领域
本申请实施例涉及硬件设备领域,具体而言,涉及一种驱动文件的测试方法、系统、存储介质及电子设备。
背景技术
目前,现有的交换机框式设备一般都包括支持不同类型的线卡的卡槽,以实现不同容量的数据交换功能以及监测功能。由于交换机框式设备的板卡为每个卡槽设计了不同的端口,不同类型的线卡插到不同的卡槽上会出现不同的拓扑排列组合,导致每次创建设备驱动时需要创建不同的拓扑,插入多个线卡时也进而影响了设备驱动的加载顺序。因此研发人员在进行测试时不仅需要协调各种类型的线卡与插入卡槽的对应关系,实现不同的拓扑排列组合,还需分别验证不同拓扑下的设备驱动的创建是否正常以及相关的设备功能是否正确,。在测试过程中,如果设备驱动存在共性错误,还需要再手动修改多份驱动源码,容易出现遗漏或误修改,导致存在测试效率低下的问题。
针对相关技术中,如何提高驱动文件的测试效率的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种驱动文件的测试方法、系统、存储介质及电子设备,以至少解决相关技术中如何提高驱动文件的测试效率的问题。
根据本申请的一个实施例,提供了一种驱动文件的测试方法,包括:确定出与线卡设备的线卡卡槽相连通的待测试线卡;基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
在一个示例性实施例中,确定出与线卡设备的线卡卡槽相连通的待测试线卡,包括:向目标对象发送线卡选通提示消息,其中,所述线卡选通提示消息用于提示所述目标对象选择与所述线卡设备的线卡卡槽相连通的线卡;接收所述目标对象基于所述线卡选通提示消息所选择的第一线卡,并将所述第一线卡确定为所述待测试线卡。
在一个示例性实施例中,确定出与线卡设备的线卡卡槽相连通的待测试线卡,包括:确定出所述线卡卡槽所支持的所有线卡;遍历为所述所有线卡预设的线卡测试顺序;从所述线卡测试顺序中确定出最先测试的第二线卡,并将所述第二线卡确定为所述待测试线卡。
在一个示例性实施例中,在确定出与线卡设备的线卡卡槽相连通的待测试线卡之后,所述方法还包括:生成用于连通所述待测试线卡的线卡连通指令;将所述线卡连通指令发送给选通设备,以控制所述选通设备将所述待测试线卡与所述线卡卡槽之间的连接电路的电路状态设置为通路;其中,所述选通设备的一端连接所述线卡设备的线卡卡槽,所述选通设备的另一端连接所述线卡卡槽所支持的不同线卡,且所述选通设备用于提供所述不同线卡与所述线卡卡槽之间的连接电路,所述连接电路的默认电路状态为开路。
在一个示例性实施例中,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,包括:从所述线卡配置信息中确定出所述待测试线卡在文件系统中对应的节点信息,其中,所述文件系统存在于所述线卡设备的内存空间,所述节点信息至少包括通用功能节点信息和文件系统的系统属性节点信息;从所述系统属性节点信息中确定出与所述线卡卡槽所支持的线卡类型对应的线卡属性节点信息;将所述通用功能节点信息和所述线卡属性节点信息写入至所述线卡卡槽对应的驱动模块中,以使驱动模块基于所述通用功能节点信息和所述线卡属性节点信息在预设路径下生成驱动文件。
在一个示例性实施例中,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,包括:在确定所述线卡卡槽支持不同线卡类型,且所述线卡卡槽已经与所述不同线卡类型对应的线卡相连通的情况下,获取为所述不同线卡类型预先设置的线卡测试序列,其中,所述线卡测试序列表示对所述不同线卡类型进行排列得到的序列,所述线卡测试序列中的每一个序列值表示一种排列结果;确定出遍历所述线卡测试序列时得到的遍历序列值,并基于所述线卡配置信息和所述遍历序列值所指示的线卡类型生成所述驱动文件。
在一个示例性实施例中,使用测试用例对使用所述驱动文件所创建的设备功能进行测试,得到测试结果,包括:在确定所述驱动文件与所述线卡设备互相兼容的情况下,在所述线卡设备中加载所述驱动文件;将第一测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第一测试用例用于对所述线卡设备的正常工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为正常的情况下,将所述测试结果确定为测试通过;和/或,将第二测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第二测试用例用于对所述线卡设备处于故障时的工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试通过;和/或,使用第三测试用例中的测试环境替换将所述线卡设备所处的设备环境,确定出在所述线卡设备在所述测试环境下加载所述驱动文件后得到的当前设备数据;其中,所述第三测试用例用于对所述线卡设备处于所述测试环境时的设备状态进行测试;在确定所述当前设备数据用于指示所述线卡设备的设备状态为正常的情况下,将所述测试结果确定为测试通过。
根据本申请的另一个实施例,提供了一种驱动文件的测试装置,包括:第一确定模块,用于确定出与线卡设备的线卡卡槽相连通的待测试线卡;第二确定模块,用于基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;文件生成模块,用于基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;功能测试模块,用于使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本申请,可以根据线卡设备卡槽插入的线卡从配置文件中找到对应的配置信息,进而根据线卡配置信息和线卡卡槽支持的线卡类型生成线卡设备的驱动文件,为线卡设备通过不同的设备功能,进而使用测试用例对驱动文件所提供的设备功能进行测试,得到测试结果。因此,可以解决相关技术中,如何提高驱动文件的测试效率的问题。
附图说明
图1是本申请实施例的一种驱动文件的测试方法的服务器设备的硬件结构框图;
图2是根据本申请实施例的驱动文件的测试方法的流程图;
图3是根据本申请实施例的线卡测试装置的结构框图;
图4是根据本申请实施例的驱动文件的测试方法的流程示意图;
图5是根据本申请实施例的驱动文件的测试装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在服务器设备或者类似的运算装置中执行。以运行在服务器设备上为例,图1是本申请实施例的一种驱动文件的测试方法的服务器设备的硬件结构框图。如图1所示,服务器设备可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述服务器设备还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器设备的结构造成限定。例如,服务器设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的驱动文件的测试方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器设备的通信供应方提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种驱动文件的测试方法,图2是根据本申请实施例的驱动文件的测试方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,确定出与线卡设备的线卡卡槽相连通的待测试线卡;
可选的,在上述步骤S202中,所述线卡设备例如可以理解为交换机框式设备,交换机框式设备包括机框,一个机框上有若干个卡槽,可以同时支持不同类型的线卡,不同类型的线卡具有不同容量及功能,进而可以使交换机框式设备实现不同容量的数据交换以及不同的设备功能。
步骤S204,基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
可选的,在上述步骤中,配置文件中包括CPLD(Complex Programmable LogicDevice,复杂的可编程逻辑设备)的寄存器偏移,Sysfs名称以及每个Sysfs需要的信息,其中Sysfs表示linux系统下一个基于内存的文件系统,用于将设备驱动通过文件的方式从内核空间映射到用户空间,用户可以通过shell命令的″cat″″echo″访问指定目录中由驱动读写空间生成的临时文件对设备和驱动进行访问和设置。
步骤S206,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
步骤S208,使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
通过上述步骤,可以确定出与线卡设备的线卡卡槽相连通的待测试线卡;基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果,解决了相关技术中,如何提高驱动文件的测试效率的问题。
在一个示例性实施例中,对于上述步骤S202确定出与线卡设备的线卡卡槽相连通的待测试线卡的实现过程,具体包括:向目标对象发送线卡选通提示消息,其中,所述线卡选通提示消息用于提示所述目标对象选择与所述线卡设备的线卡卡槽相连通的线卡;接收所述目标对象基于所述线卡选通提示消息所选择的第一线卡,并将所述第一线卡确定为所述待测试线卡。
在一个示例性实施例中,还可以通过以下方式实现上述步骤S202中确定出与线卡设备的线卡卡槽相连通的待测试线卡的过程:确定出所述线卡卡槽所支持的所有线卡;遍历为所述所有线卡预设的线卡测试顺序;从所述线卡测试顺序中确定出最先测试的第二线卡,并将所述第二线卡确定为所述待测试线卡。
在一个示例性实施例中,在执行上述步骤S202确定出与线卡设备的线卡卡槽相连通的待测试线卡的方案之后,所述方法还包括:生成用于连通所述待测试线卡的线卡连通指令;将所述线卡连通指令发送给选通设备,以控制所述选通设备将所述待测试线卡与所述线卡卡槽之间的连接电路的电路状态设置为通路;其中,所述选通设备的一端连接所述线卡设备的线卡卡槽,所述选通设备的另一端连接所述线卡卡槽所支持的不同线卡,且所述选通设备用于提供所述不同线卡与所述线卡卡槽之间的连接电路,所述连接电路的默认电路状态为开路。
在一个示例性实施例中,对于上述步骤S206提供的基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件的实现过程,具体包括:从所述线卡配置信息中确定出所述待测试线卡在文件系统中对应的节点信息,其中,所述文件系统存在于所述线卡设备的内存空间,所述节点信息至少包括通用功能节点信息和文件系统的系统属性节点信息;从所述系统属性节点信息中确定出与所述线卡卡槽所支持的线卡类型对应的线卡属性节点信息;将所述通用功能节点信息和所述线卡属性节点信息写入至所述线卡卡槽对应的驱动模块中,以使驱动模块基于所述通用功能节点信息和所述线卡属性节点信息在预设路径下生成驱动文件。
可选的,在上述实施例中,上述通用功能节点信息包括线卡在位标识、线卡类型标识、线卡上电控制、线卡的灯状态、线卡的上电是否良好的状态等。上述系统属性节点信息包括sysfs的名称,sysfs位于CPLD的位置、sysfs位于CPLD的设备地址,sysfs位于CPLD寄存器的偏移地址,sysfs对应寄存器的内部的每个比特的位置以及长度等。
可选的,在上述实施例中,可以提前在配置文件中对多种类型的线卡进行信息配置,当插入线卡时,则直接从上述配置文件中匹配与待测试线卡对应的配置文件。
在一个可选的实施例中,还提出了以下用于基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息的实现步骤,具体包括:从所述线卡卡槽对应的配置文件中获取线卡配置文件,根据所述线卡配置文件确定所述线卡配置信息,其中,所述线卡配置文件所指示的线卡类型与所述待测试线卡的线卡类型一致。
通过上述实施例,在设备驱动的测试过程中出现通用功能错误时可以统一对配置文件中的通用功能节点信息进行修改不用再分别对多份驱动源码进行修改,提高了驱动源码的可维护性。
在一个示例性实施例中,对于上述步骤S206基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件的具体实现过程,还可以包括:在确定所述线卡卡槽支持不同线卡类型,且所述线卡卡槽已经与所述不同线卡类型对应的线卡相连通的情况下,获取为所述不同线卡类型预先设置的线卡测试序列,其中,所述线卡测试序列表示对所述不同线卡类型进行排列得到的序列,所述线卡测试序列中的每一个序列值表示一种排列结果;确定出遍历所述线卡测试序列时得到的遍历序列值,并基于所述线卡配置信息和所述遍历序列值所指示的线卡类型生成所述驱动文件。
可选的,在上述实施例中,在生成所述驱动文件后,还可以根据所述线卡测试序列对所述驱动文件一一进行测试。
在一个示例性实施例中,对于上述步骤S208使用测试用例对使用所述驱动文件所创建的设备功能进行测试,得到测试结果的过程,可以通过以下方式实现:在确定所述驱动文件与所述线卡设备互相兼容的情况下,在所述线卡设备中加载所述驱动文件;将第一测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第一测试用例用于对所述线卡设备的正常工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为正常的情况下,将所述测试结果确定为测试通过;和/或,将第二测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第二测试用例用于对所述线卡设备处于故障时的工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试通过;和/或,使用第三测试用例中的测试环境替换将所述线卡设备所处的设备环境,确定出在所述线卡设备在所述测试环境下加载所述驱动文件后得到的当前设备数据;其中,所述第三测试用例用于对所述线卡设备处于所述测试环境时的设备状态进行测试;在确定所述当前设备数据用于指示所述线卡设备的设备状态为正常的情况下,将所述测试结果确定为测试通过。
可选的,在上述实施例中,还包括:在确定所述驱动文件与所述线卡设备互相兼容的情况下,在所述线卡设备中加载所述驱动文件;将第一测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第一测试用例用于对所述线卡设备的正常工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试不通过;和/或,将第二测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第二测试用例用于对所述线卡设备处于故障时的工作状态进行测试;在确定所述设备工作结果用于未指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试不通过;和/或,使用第三测试用例中的测试环境替换将所述线卡设备所处的设备环境,确定出在所述线卡设备在所述测试环境下加载所述驱动文件后得到的当前设备数据;其中,所述第三测试用例用于对所述线卡设备处于所述测试环境时的设备状态进行测试;在确定所述当前设备数据用于指示所述线卡设备的设备状态为异常的情况下,将所述测试结果确定为测试不通过。
可选的,在上述实施例中,例如第一测试用例包括但不限于以下测试用例:
1,输入一个存在的文件路径,检查是否能够正确读取文件内容;
2,输入一个文件路径,检查是否能够正确写入内容到文件中;
3,输入一个文件路径,检查是否能够正确删除文件;
4,输入一个文件路径,检查是否能够正确重命名文件;
5,输入一个文件路径,检查是否能够正确复制文件到指定路径;
6,输入一个文件路径,检查是否能够正确移动文件到指定路径;
7,输入一个文件路径,检查是否能够正确获取文件属性信息,如大小、创建时间等;
8,输入一个文件路径,检查是否能够正确打开文件进行编辑;
9,输入一个文件路径,检查是否能够正确关闭文件。
其中,例如第二测试用例可以包括:输入一个不存在的文件路径,检查是否能够正确提示文件不存在的错误信息。
通过上述实施例,可以全面的对线卡设备的驱动进行功能测试,实现有限线卡资源下的高效全量功能验证,提高了设备驱动的可靠性。
显然,上述所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。为了更好的理解上述驱动文件的测试方法,以下结合实施例对上述过程进行说明,但不用于限定本申请实施例的技术方案,具体地:
在一个可选的实例中,图3是根据本申请实施例的线卡测试装置的结构框图,如图3所示,线卡测试装置30的一端插入被测的框式交换机31内,另一端分别插入了线卡A,线卡B,线卡C,线卡D四种不同类型的线卡。线卡测试装置30内部使用CPLD实现硬件功能,可以控制线卡与框式交换机31之间连接电路的选通。框式交换机31内还包括自动化测试模块32,用于解析卡槽(如图3中SLOT1)的配置文件,根据配置文件自动匹配计算出全量的线卡配置组合,并基于全量测试的原则,重复执行驱动卸载以及加载的动作,以及通过执行测试用例库中的相关测试用例来判断在某种线卡组合拓扑下,功能是否创建正常。例如针对支持A、B、C、D四种线卡类型的线卡卡槽,需要测试的排列组合数量为4的阶乘。其中,自动化测试模块32还可以通过SSH协议连接远程控制模块33,以实现远程测试功能。
在一个可选的实施例中,图4是根据本申请实施例的驱动文件的测试方法的流程示意图,如图4所示,包括以下步骤:
步骤S401:加载驱动文件;
需要说明的是,线卡设备的驱动文件需要写入线卡设备的驱动模块中,驱动模块又称为SLOT模块,SLOT模块包括sysfs功能节点(相当于通用功能节点信息),例如线卡在位标识、线卡类型标识、线卡上电控制、线卡的灯状态、线卡用电状态等功能节点。还包括sysfs属性信息节点(相当于线卡属性节点信息),例如sysfs的名称,以及sysfs位于CPLD的位置、sysfs位于CPLD的设备地址,sysfs位于CPLD寄存器的偏移地址,sysfs对应寄存器的内部的每个比特的位置以及长度。
其中,上述线卡在位标识、线卡类型标识、线卡用电状态均使用CPLD上的寄存器来标识,线卡的上电控制操作以及关于单张线卡的其他操作均使用CPLD的寄存器来控制。
步骤S402:创建sysfs属性信息节点供应用层写入;
具体的,在SLOT驱动模块中,增加关于sysfs属性信息节点,例如线卡设备中含有4个卡槽,共支持5种线卡类型,顶层为SLOT1、SLOT2、SLOT3、SLOT4,则在每个SLOT的配置域内分别配置5种线卡类型的拓扑信息以及sysfs节点各种信息,因为不同类型的线卡插在不同卡槽时,对应线卡的拓扑信息(设备地址、总线ID号以及相关的sysfs的属性信息)是不相同的。
步骤S403:解析驱动文件得到sysfs属性节点信息;
具体的,通过识别固定的功能节点中的通用功能节点信息确定线卡的配置信息,例如线卡在位信息以及线卡的类型信息,然后根据线卡的配置信息从解析出的驱动文件中查找与待测试线卡对应的sysfs属性节点信息,将其写入sysfs属性信息节点。
步骤S404:创建线卡功能的sysfs属性信息节点。
具体的,根据上述步骤S403中查找到的sysfs属性节点信息创建出对应的sysfs属性信息节点。
通过上述实施例,可以根据卡槽的线卡配置信息从对应的SLOT配置域内查找对应线卡的sysfs属性节点信息,将其写入内核空间,实现使用同一份驱动文件来统一管理不同线卡插入场景下的设备功能创建。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种驱动文件的测试装置,该系统用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的系统较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本申请实施例的驱动文件的测试装置的结构框图,如图5所示,该装置包括:
第一确定模块52,用于确定出与线卡设备的线卡卡槽相连通的待测试线卡;
第二确定模块54,用于基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
文件生成模块56,用于基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
功能测试模块58,用于使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
通过上述装置,可以确定出与线卡设备的线卡卡槽相连通的待测试线卡;基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。解决了相关技术中,如何提高驱动文件的测试效率的问题。
在一个示例性实施例中,第一确定模块52,还用于:向目标对象发送线卡选通提示消息,其中,所述线卡选通提示消息用于提示所述目标对象选择与所述线卡设备的线卡卡槽相连通的线卡;接收所述目标对象基于所述线卡选通提示消息所选择的第一线卡,并将所述第一线卡确定为所述待测试线卡。
在一个示例性实施例中,第一确定模块52,还用于:确定出所述线卡卡槽所支持的所有线卡;遍历为所述所有线卡预设的线卡测试顺序;从所述线卡测试顺序中确定出最先测试的第二线卡,并将所述第二线卡确定为所述待测试线卡。
在一个示例性实施例中,第一确定模块52,还用于:生成用于连通所述待测试线卡的线卡连通指令;将所述线卡连通指令发送给选通设备,以控制所述选通设备将所述待测试线卡与所述线卡卡槽之间的连接电路的电路状态设置为通路;其中,所述选通设备的一端连接所述线卡设备的线卡卡槽,所述选通设备的另一端连接所述线卡卡槽所支持的不同线卡,且所述选通设备用于提供所述不同线卡与所述线卡卡槽之间的连接电路,所述连接电路的默认电路状态为开路。
在一个示例性实施例中,文件生成模块56,还用于:从所述线卡配置信息中确定出所述待测试线卡在文件系统中对应的节点信息,其中,所述文件系统存在于所述线卡设备的内存空间,所述节点信息至少包括通用功能节点信息和文件系统的系统属性节点信息;从所述系统属性节点信息中确定出与所述线卡卡槽所支持的线卡类型对应的线卡属性节点信息;将所述通用功能节点信息和所述线卡属性节点信息写入至所述线卡卡槽对应的驱动模块中,以使驱动模块基于所述通用功能节点信息和所述线卡属性节点信息在预设路径下生成驱动文件。
在一个示例性实施例中,文件生成模块56,还用于:在确定所述线卡卡槽支持不同线卡类型,且所述线卡卡槽已经与所述不同线卡类型对应的线卡相连通的情况下,获取为所述不同线卡类型预先设置的线卡测试序列,其中,所述线卡测试序列表示对所述不同线卡类型进行排列得到的序列,所述线卡测试序列中的每一个序列值表示一种排列结果;确定出遍历所述线卡测试序列时得到的遍历序列值,并基于所述线卡配置信息和所述遍历序列值所指示的线卡类型生成所述驱动文件。
在一个示例性实施例中,功能测试模块58,还用于:在确定所述驱动文件与所述线卡设备互相兼容的情况下,在所述线卡设备中加载所述驱动文件;将第一测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第一测试用例用于对所述线卡设备的正常工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为正常的情况下,将所述测试结果确定为测试通过;和/或,将第二测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第二测试用例用于对所述线卡设备处于故障时的工作状态进行测试;在确定所述设备工作结果用于指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试通过;和/或,使用第三测试用例中的测试环境替换将所述线卡设备所处的设备环境,确定出在所述线卡设备在所述测试环境下加载所述驱动文件后得到的当前设备数据;其中,所述第三测试用例用于对所述线卡设备处于所述测试环境时的设备状态进行测试;在确定所述当前设备数据用于指示所述线卡设备的设备状态为正常的情况下,将所述测试结果确定为测试通过。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,确定出与线卡设备的线卡卡槽相连通的待测试线卡;
S2,基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
S3,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
S4,使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,确定出与线卡设备的线卡卡槽相连通的待测试线卡;
S2,基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
S3,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
S4,使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种驱动文件的测试方法,其特征在于,包括:
确定出与线卡设备的线卡卡槽相连通的待测试线卡;
基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
2.根据权利要求1所述的方法,其特征在于,确定出与线卡设备的线卡卡槽相连通的待测试线卡,包括:
向目标对象发送线卡选通提示消息,其中,所述线卡选通提示消息用于提示所述目标对象选择与所述线卡设备的线卡卡槽相连通的线卡;
接收所述目标对象基于所述线卡选通提示消息所选择的第一线卡,并将所述第一线卡确定为所述待测试线卡。
3.根据权利要求1所述的方法,其特征在于,确定出与线卡设备的线卡卡槽相连通的待测试线卡,包括:
确定出所述线卡卡槽所支持的所有线卡;
遍历为所述所有线卡预设的线卡测试顺序;
从所述线卡测试顺序中确定出最先测试的第二线卡,并将所述第二线卡确定为所述待测试线卡。
4.根据权利要求1至3任一项中所述的方法,其特征在于,在确定出与线卡设备的线卡卡槽相连通的待测试线卡之后,所述方法还包括:
生成用于连通所述待测试线卡的线卡连通指令;
将所述线卡连通指令发送给选通设备,以控制所述选通设备将所述待测试线卡与所述线卡卡槽之间的连接电路的电路状态设置为通路;
其中,所述选通设备的一端连接所述线卡设备的线卡卡槽,所述选通设备的另一端连接所述线卡卡槽所支持的不同线卡,且所述选通设备用于提供所述不同线卡与所述线卡卡槽之间的连接电路,所述连接电路的默认电路状态为开路。
5.根据权利要求1所述的方法,其特征在于,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,包括:
从所述线卡配置信息中确定出所述待测试线卡在文件系统中对应的节点信息,其中,所述文件系统存在于所述线卡设备的内存空间,所述节点信息至少包括通用功能节点信息和文件系统的系统属性节点信息;
从所述系统属性节点信息中确定出与所述线卡卡槽所支持的线卡类型对应的线卡属性节点信息;
将所述通用功能节点信息和所述线卡属性节点信息写入至所述线卡卡槽对应的驱动模块中,以使驱动模块基于所述通用功能节点信息和所述线卡属性节点信息在预设路径下生成驱动文件。
6.根据权利要求1所述的方法,其特征在于,基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,包括:
在确定所述线卡卡槽支持不同线卡类型,且所述线卡卡槽已经与所述不同线卡类型对应的线卡相连通的情况下,获取为所述不同线卡类型预先设置的线卡测试序列,其中,所述线卡测试序列表示对所述不同线卡类型进行排列得到的序列,所述线卡测试序列中的每一个序列值表示一种排列结果;
确定出遍历所述线卡测试序列时得到的遍历序列值,并基于所述线卡配置信息和所述遍历序列值所指示的线卡类型生成所述驱动文件。
7.根据权利要求1所述的方法,其特征在于,使用测试用例对使用所述驱动文件所创建的设备功能进行测试,得到测试结果,包括:
在确定所述驱动文件与所述线卡设备互相兼容的情况下,在所述线卡设备中加载所述驱动文件;
将第一测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第一测试用例用于对所述线卡设备的正常工作状态进行测试;
在确定所述设备工作结果用于指示所述线卡设备的工作状态为正常的情况下,将所述测试结果确定为测试通过;
和/或,将第二测试用例的测试数据输入至所述线卡设备,得到所述线卡设备的设备工作结果,其中,所述第二测试用例用于对所述线卡设备处于故障时的工作状态进行测试;
在确定所述设备工作结果用于指示所述线卡设备的工作状态为异常的情况下,将所述测试结果确定为测试通过;
和/或,使用第三测试用例中的测试环境替换将所述线卡设备所处的设备环境,确定出在所述线卡设备在所述测试环境下加载所述驱动文件后得到的当前设备数据;其中,所述第三测试用例用于对所述线卡设备处于所述测试环境时的设备状态进行测试;
在确定所述当前设备数据用于指示所述线卡设备的设备状态为正常的情况下,将所述测试结果确定为测试通过。
8.一种驱动文件的测试装置,其特征在于,包括:
第一确定模块,用于确定出与线卡设备的线卡卡槽相连通的待测试线卡;
第二确定模块,用于基于所述线卡卡槽对应的配置文件确定出所述待测试线卡的线卡配置信息;
文件生成模块,用于基于所述线卡配置信息和所述线卡卡槽所支持的线卡类型生成驱动文件,其中,所述驱动文件用于根据不同线卡测试序列为所述线卡设备提供设备功能;
功能测试模块,用于使用测试用例对使用所述驱动文件所提供的设备功能进行测试,得到测试结果。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410139704.0A CN118069503A (zh) | 2024-01-31 | 2024-01-31 | 驱动文件的测试方法、系统、存储介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410139704.0A CN118069503A (zh) | 2024-01-31 | 2024-01-31 | 驱动文件的测试方法、系统、存储介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118069503A true CN118069503A (zh) | 2024-05-24 |
Family
ID=91099763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410139704.0A Pending CN118069503A (zh) | 2024-01-31 | 2024-01-31 | 驱动文件的测试方法、系统、存储介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118069503A (zh) |
-
2024
- 2024-01-31 CN CN202410139704.0A patent/CN118069503A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112256558B (zh) | 一种测试用例的生成方法、装置、计算机设备及存储介质 | |
CN112260885B (zh) | 一种工控协议自动测试方法、系统、装置及可读存储介质 | |
CN110990289B (zh) | 一种自动提交bug的方法、装置、电子设备及存储介质 | |
CN116166525A (zh) | 一种测试脚本的生成方法及装置 | |
CN108009086B (zh) | 基于用例分解和功能学习的系统自动化测试方法 | |
CN112463596B (zh) | 测试用例数据的处理方法、装置、设备以及处理设备 | |
WO2016165461A1 (zh) | 一种电信网网管系统软件自动化测试方法和装置 | |
CN109324933A (zh) | 一种AEP内存reboot测试方法、装置、终端及存储介质 | |
CN111259619B (zh) | 配置对象的控制方法、装置、存储介质及验证平台 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN112858876A (zh) | 一种自适应的芯片自动化测试方法 | |
CN104679648A (zh) | 跨应用的自动化测试方法 | |
CN118069503A (zh) | 驱动文件的测试方法、系统、存储介质及电子设备 | |
CN110427528A (zh) | Ssd标识符测试方法、装置、计算机设备及存储介质 | |
CN115934503A (zh) | 程序测试方法、装置、设备及存储介质 | |
CN114020604A (zh) | 一种基于工作流的自动化测试方法及装置 | |
CN114385493A (zh) | 一种性能测试方法、装置、电子设备及存储介质 | |
US20100146337A1 (en) | Method and device for detecting non-regression of an input/output system in a simulation environment | |
CN113110991A (zh) | 页面元素的定位方法及装置、存储介质及电子装置 | |
CN101976219A (zh) | 调试自动化测试脚本的方法和系统及代理装置 | |
CN113515452A (zh) | 应用的自动测试方法、系统、电子设备及存储介质 | |
CN113051178A (zh) | 测试数据构造方法、装置、设备及介质 | |
CN113190445A (zh) | 接口测试方法、接口测试装置和接口测试系统 | |
CN114675926A (zh) | 虚拟机属性变更方法和装置、存储介质和电子装置 | |
CN112433946A (zh) | 接口测试管理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |