CN116860647A - 接口测试方法、测试设备以及存储介质 - Google Patents
接口测试方法、测试设备以及存储介质 Download PDFInfo
- Publication number
- CN116860647A CN116860647A CN202310905361.XA CN202310905361A CN116860647A CN 116860647 A CN116860647 A CN 116860647A CN 202310905361 A CN202310905361 A CN 202310905361A CN 116860647 A CN116860647 A CN 116860647A
- Authority
- CN
- China
- Prior art keywords
- test
- interface
- tested
- equipment
- request
- 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 435
- 238000010998 test method Methods 0.000 title description 8
- 230000004044 response Effects 0.000 claims abstract description 77
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000004806 packaging method and process Methods 0.000 claims abstract description 19
- 238000004458 analytical method Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000005316 response function Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 28
- 238000004891 communication Methods 0.000 description 14
- 238000007726 management method Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请实施例提供了一种接口测试方法、测试设备以及存储介质,其中,该方法包括:测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求;利用第二协议通过待测试接口向待测试设备发送开始测试请求,以指示待测试设备基于开始测试请求反馈测试应答数据;接收待测试设备通过待测试接口反馈的测试应答数据;基于测试应答数据确定测试结果。通过本申请,解决了相关技术中存在的无法测试主板上的接口的问题,达到测试主板上的接口的效果,提高了测试效率。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种接口测试方法、测试设备以及存储介质。
背景技术
随着当前计算力的高速发展,服务器的用量在急剧上升。服务器的研发和迭代更新就显得尤为重要,服务器内每一块板卡在出厂前都要经过开机验证。有些机型在最终使用时需要接入到智能平台,使用IPMB进行集中管理;管理模块通过智能平台管理总线与每台机器自身的BMC进行数据交互;这些机型主板上设计有IPMB接口用以接入到智能平台管理总线。IPMB协议所使用的物理层是I2C总线,IPMB相当于在I2C协议上面增加了一层网络协议;但和主板上其他I2C接口类型和电压不同,无法简单的用测试其他I2C接口的治具测试。
目前板卡生产厂家并不具备智能平台管理总线,对于主板上的接口还无法进行测试。
针对相关技术中存在的上述问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种接口测试方法、测试设备以及存储介质,以至少解决相关技术中无法测试主板上的接口的问题。
根据本申请的一个实施例,提供了一种接口测试方法,包括:测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求;利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求,以指示所述待测试设备基于所述开始测试请求反馈测试应答数据;接收待测试设备通过所述待测试接口反馈的测试应答数据;基于所述测试应答数据确定测试结果。
在一个示例性实施例中,在通过第一协议对测试请求进行打包之前,所述方法还包括:开发测试接口,以通过所述测试接口实现所述第一协议中的请求功能以及应答功能,其中,所述测试接口与所述待测试接口的类型相同。
在一个示例性实施例中,通过第一协议对测试请求进行打包,得到开始测试请求包括:为所述测试请求分配命令域以及请求消息序列号;通过所述第一协议对所述命令域、所述请求消息序列号、所述测试设备的地址以及所述测试设备的网络功能号进行打包,得到所述开始测试请求。
在一个示例性实施例中,利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求包括:调用与所述第二协议对应的数据发送函数;利用所述数据发送函数通过所述待测试接口向所述测试设备发送所述开始测试请求。
在一个示例性实施例中,基于所述测试应答数据确定测试结果包括:解析所述测试应答数据,得到解析应答数据,其中,所述解析应答数据中包括从地址、命令域、请求消息序列号、逻辑单元号;将所述解析应答数据与所述开始测试请求中存在不同的数据的情况下,确定所述测试结果为测试失败;在所述解析应答数据与所述开始测试请求中的数据相同的情况下,确定所述测试结果为测试成功。
在一个示例性实施例中,在利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求之后,所述方法还包括:在预定时间段内未收到所述测试应答数据的情况下,确定测试结果为测试失败。
在一个示例性实施例中,在基于所述测试应答数据确定测试结果之后,所述方法还包括:通过目标接口将所述测试结果发送给所述待测试设备。
根据本申请的另一个实施例,提供了一种测试设备,执行上述实施例中所述的测试方法,包括:目标接口,所述目标接口与所述待测试设备中包括的与所述目标接口同类型的接口连接,所述待测试设备通过所述目标接口为所述测试设备供电,所述待测试设备通过所述目标接口向所述测试设备发送测试启动指令;测试接口,所述测试接口与所述待测试设备中包括的待测试接口连接,所述测试接口与所述待测试接口类型相同;芯片,所述芯片与所述目标接口以及所述测试接口连接,用于在通过所述目标接口接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过所述测试接口以及待测试接口向所述待测试设备发送所述开始测试请求,并接收待测试设备通过所述待测试接口反馈的测试应答数据,基于所述测试应答数据确定测试结果。
在一个示例性实施例中,所述测试设备还包括目标接口,所述目标接口与所述芯片连接,所述目标接口还与所述待测试设备中包括的与所述目标接口同类型的接口连接,所述待测试设备通过所述目标接口为所述测试设备供电,所述待测试设备通过所述目标接口向所述测试设备发送所述测试启动指令,所述测试设备通过所述目标接口向所述待测试设备发送所述测试结果。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
通过本申请,测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过待测试接口向待测试设备发送开始测试请求,待测试设备在接收到开始测试请求后,可以根据开始测试请求反馈测试应答数据;测试设备接收待测试设备通过待测试接口反馈的测试应答数据,并根据测试应答数据确定测试结果。由于在对待测试设备的待测试接口进行测试时,可以通过第一协议对测试请求进行打包,通过第二协议发送开始测试请求。通过待测试接口传输开始测试请求以及测试应答数据,并根据测试应答数据确定测试结果。因此,可以解决相关技术中存在的无法测试主板上的接口的问题,达到测试主板上的接口的效果,提高了测试效率。
附图说明
图1是本申请实施例的一种接口测试方法的移动终端的硬件结构框图;
图2是根据本申请实施例的接口测试的方法的流程图;
图3是根据本发明具体实施例的测试设备主要数据流向示意图;
图4是根据本发明具体实施例的接口测试方法流程图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图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,测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求;
步骤S204,利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求,以指示所述待测试设备基于所述开始测试请求反馈测试应答数据;
步骤S206,接收待测试设备通过所述待测试接口反馈的测试应答数据;
步骤S208,基于所述测试应答数据确定测试结果。
在上述实施例中,待测试设备可以是服务器或其他具备数据处理功能的电子设备,测试设备可以是小型固件。测试设备可以包括芯片,如可编程化系统单芯片PSOC。PSOC是一种可编程化的混合讯号阵列架构,由一个芯片内建的微控制器所控制,整合可组态的类比与数位电路。待测试设备可以与测试设备通过有线的方式连接,如通过待测试接口连接,还可以通过无线的方式连接,如测试设备与待测设备通过WIFI连接。
在上述实施例中,待测试接口可以为IPMB接口,即智能平台管理总线接口,由于主板测试项较多,因此IPMB接口的测试时机可以由待测试设备决定。在待测试设备可以对IPMB接口进行测试时,可以向测试设备发送测试启动指令。测试启动指令可以是通过有线的方式发送的。待测试设备和测试设备中均可以包括USB接口,待测试设备和测试设备可以通过USB连接。待测试设备可以通过USB接口向测试设备发送测试启动指令。
在上述实施例中,测试启动指令还可以是通过无线的方式发送的,待测试设备和测试设备上可以集成有无线模块,待测试设备可以通过无线模块将测试启动指令发送给测试设备。通过无线的方式发送测试启动指令可以免于设置USB接口,待测试设备和测试设备无需通过USB线连接,待测试设备和测试设备之间的距离可以适当增加。并且,通过无线的方式可以使一个测试设备对接对个待测试设备,提高了测试效率。
在上述实施例中,当测试设备与待测试设备是通过无线的方式连接时,测试设备可以连接到待测试设备的WIFI热点中,待测试完成后,测试设备可以自动断开与该待测试设备的连接,自动连接到其他允许连接的待测试设备的WIFI热点中,开始测试另一个待测试设备。需要说明的是,待测试设备的WIFI热点仅支持一个设备连接,当未开始测试时,待测试设备的WIFI热点自动开启,等待测试。当测试完成后,待测试设备的WIFI热点自动关闭。如此设置,可以避免对同一个待测试进行重复测试的情况发生,提高了测试效率。
在上述实施例中,测试设备在接收到测试启动指令的情况下,可以通过第一协议对测试请求进行打包。其中,第一协议可以为IPMB协议。即测试设备可以按照IPMB协议对测试请求进行打包,得到开始测试请求。其中,测试请求中可以包括测试程序、测试设备的IP地址、命令域、请求消息序列号以及自身网络功能号。
在上述实施例中,开始测试请求可以根据第二协议通过待测试接口发送给待测试设备。待测试设备可以将测试应答数据通过待测试接口发送给测试设备,测试设备根据测试应答数据确定测试结果。其中,第二协议可以是I2C协议。
其中,上述步骤的执行主体可以为测试设备等,但不限于此。
通过本申请,测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过待测试接口向待测试设备发送开始测试请求,待测试设备在接收到开始测试请求后,可以根据开始测试请求反馈测试应答数据;测试设备接收待测试设备通过待测试接口反馈的测试应答数据,并根据测试应答数据确定测试结果。由于在对待测试设备的待测试接口进行测试时,可以通过第一协议对测试请求进行打包,通过第二协议发送开始测试请求。通过待测试接口传输开始测试请求以及测试应答数据,并根据测试应答数据确定测试结果。因此,可以解决相关技术中存在的无法测试主板上的接口的问题,达到测试主板上的接口的效果,提高了测试效率。
在一个示例性实施例中,在通过第一协议对测试请求进行打包之前,所述方法还包括:开发测试接口,以通过所述测试接口实现所述第一协议中的请求功能以及应答功能,其中,所述测试接口与所述待测试接口的类型相同。在本实施例中,在对测试请求进行打包之前,可以在测试设备中开发响应的固件,实现I2C协议与IPMB协议与主板通信。其中,开发测试接口可以包括开发实现I2C协议通信,提供接口函数借上层调用;由于IPMB协议只使用I2C的主写模式,所以可以只实现I2C协议的主写模式。可以编写程序实现I2C_Start,I2C_Stop,ReadACK,SendACK,ReadByte,SendByte函数,在函数里根据I2C协议对时序的要求对高低电平进行控制;编写SendData,ReadData函数供上层调用。并开发实现IPMB协议通信中的请求与应答功能,调用I2C程序提供的接口,将IPMB数据传递给I2C发送出去。
在上述实施例中,仅开发第一协议中的请求功能以及应答功能即可以实现测试待测试接口的功能,简化了开发程序,提高了测试效率。
在一个示例性实施例中,通过第一协议对测试请求进行打包,得到开始测试请求包括:为所述测试请求分配命令域以及请求消息序列号;通过所述第一协议对所述命令域、所述请求消息序列号、所述测试设备的地址以及所述测试设备的网络功能号进行打包,得到所述开始测试请求。在本实施例中,可以根据IPMB协议要求,自主分配命令域和请求消息序列号;然后将命令域、请求消息序列号、自身地址以及自身网络功能号组织成请求消息,即开始测试请求。
在上述实施例中,将命令域、请求消息序列号、测试设备的地址以及测试设备的网络功能号进行打包,生成开始测试请求,可以从多个维度验证待测试设备反馈的测试应答数据,提高了测试准确率。
在一个示例性实施例中,利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求包括:调用与所述第二协议对应的数据发送函数;利用所述数据发送函数通过所述待测试接口向所述测试设备发送所述开始测试请求。在本实施例中,可以调用I2C通信提供的SendData接口将消息发送到主板,即待测试设备。
在一个示例性实施例中,基于所述测试应答数据确定测试结果包括:解析所述测试应答数据,得到解析应答数据,其中,所述解析应答数据中包括从地址、命令域、请求消息序列号、逻辑单元号;将所述解析应答数据与所述开始测试请求中存在不同的数据的情况下,确定所述测试结果为测试失败;在所述解析应答数据与所述开始测试请求中的数据相同的情况下,确定所述测试结果为测试成功。在本实施例中,可以调用I2C通信提供的ReadData接口,等待接收来自待测试设备的响应消息,即测试应答数据,然后根据IPMB协议解析测试应答数据,核对其中的从地址、命令域,请求消息序列号、逻辑单元号,如没问题则认为测试成功,如果有一项不对,则认为测试失败。
在上述实施例中,通过多个维度验证待测试设备反馈的测试应答数据,存在不同时,则认为测试失败,提高了测试准确率。
在一个示例性实施例中,在利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求之后,所述方法还包括:在预定时间段内未收到所述测试应答数据的情况下,确定测试结果为测试失败。在本实施例中,在测试设备向待测试设备发送开始测试请求后,测试设备可以开始计时,在预定时间段内未收到测试应答数据的情况下,可以认定测试失败。通过设置接收测试应答数据的时间,可以避免待测试接口由于无响应或无法传输数据而长时间等待数据的情况发生,提高了测试效果。
在一个示例性实施例中,在基于所述测试应答数据确定测试结果之后,所述方法还包括:通过目标接口将所述测试结果发送给所述待测试设备。在本实施例中,测试设备中可以设置有目标接口,待测试设备中可以设置有和目标接口类型相同的接口。其中,目标接口可以是USB接口、type-b接口、type-c接口。相应地,当目标接口为USB接口时,待测试设备中也可以设置USB接口;当目标接口为type-c接口时,待测试设备中的接口也可以为type-c接口;当目标接口为type-b接口时,待测试设备中的接口也可以为type-b接口。当目标接口为USB接口时,测试设备和待测试设备可以通过USB接口以及待测试接口,如IPMB接口连接。测试设备可以通过USB接口接收待测试设备发送的测试启动指令,也可以将测试结果通过USB接口发送给待测试设备。通过设置目标接口,实现了当待测试接口故障时,测试设备可以通过USB接口与待测试设备进行通信,防止出现测试设备与待测试设备无法通信的情况发生。
在上述实施例中,待测试设备还可以通过目标接口为测试设备供电。利用待测试设备为测试设备供电,在测试设备中无需设置电源接口,减小了测试设备的体积,同时也减少了生产测试设备的成本。
在上述实施例中,测试设备中可以设置有多个目标接口,每个目标接口与一个待测试设备连接,待测试设备通过目标接口向测试设备发送测试启动指令,测试启动指令中可以包括该待测试设备的IP地址、名称等。待测试设备在接收到测试启动指令的情况下,可以按照接收到的测试启动指令的顺序通过每个待测试设备的待测试接口向待测试设备发送开始测试请求,并根据每个待测试接口反馈的测试应答数据确定测试结果。
在上述实施例中,测试结果为测试成功则认为待测试设备的待测试接口,如IPMB接口可以正常使用,测试结果为测试失败则认为待测试设备的待测试接口,如IPMB接口不可正常使用。因此,当测试结果显示测试失败时,可以进一步确定测试失败的原因,方便对待测试接口的维修或更换。
在上述实施例中,当测试结果为测试失败时,测试设备可以向待测试设备通过目标接口发送检测指令,以指示待测试设备获取测试时的运行日志。待测试设备在接收到检测指令后,可以获取运行日志文件,并将日志文件发送给测试设备,测试设备中的处理器可以根据日志文件确定测试失败的原因。例如,测试设备中的处理器可以包括机器学习模型,通过机器学习模块对日志文件进行检测,确定测试失败的原因。在确定测试失败的原因后,测试设备可以将该待测设备的IP、测试失败的原因以及日志文件进行打包,发送设备管理处,由设备管理处对测试失败的待测试设备进行统一处理。当测试设备无法根据日志文件确定测试失败的原因时,可以将待测试设备的IP、日志文件以及标识信息进行打包,发送给设备管理处。其中,标识信息用于表示无法获取失败原因。
下面结合具体实施方式对接口测试方法进行说明:
图3是根据本发明具体实施例的测试设备主要数据流向示意图,如图3所示,在测试设备上设有相应的IPMB接口与主板的IPMB接口(对应于上述待测试接口)相连,并接入到PSOC合适的引脚上。PSOC中开发相应的固件模拟实现I2C协议(对应于上述第二协议)与IPMB协议(对应于上述第一协议)与主板通信。测试设备上设计有USB接口均通过USB线接入到主板,USB接口在治具上模拟成串口,在主板系统下增加一个串口,治具与主板通过此模拟串口进行通信。主板通过USB中的电源线路实现给治具的供电。在PSOC固件中实现相应的功能,获取并组织测试结果,与主板通信,将测试结果通过USB串口发送到主板。由于主板测试项较多,IPMB接口测试时机需由主板端测试程序决定,所以治具通过USB接口等待主板发送启动命令。
图4是根据本发明具体实施例的接口测试方法流程图,如图4所示,该方法包括:
步骤S402,搭建主板测试环境。
1.开发实现I2C协议通信,提供接口函数借上层调用;由于IPMB协议只使用I2C的主写模式,所以可以只实现I2C协议的主写模式;
可选地,可以选取PSOC的两个引脚,分别作为I2C协议里的信号线;编写程序实现I2C_Start,I2C_Stop,ReadACK,SendACK,ReadByte,SendByte函数,在函数里根据I2C协议对时序的要求对高低电平进行控制;编写SendData,ReadData函数供上层调用。
2.开发实现IPMB协议通信中的请求功能与应答功能,调用I2C程序提供的接口,将IPMB数据传递给I2C发送出去;
可选地,可以根据IPMB协议要求,自主分配命令域和请求消息序列号;然后将命令域、请求消息序列号、自身地址以及自身网络功能号组织成请求消息,最后调用I2C通信提供的SendData接口将消息发送到主板;调用I2C通信提供的ReadData接口,等待接收来自主板的响应消息,然后根据IPMB协议解析响应消息,核对其中的从地址、命令域,请求消息序列号、逻辑单元号,如没问题则认为测试成功,如果有一项不对,则认为测试失败;
3.设置超时机制,在特定时间内未收到应答数据,则认为测试失败;
步骤S404,将测试设备接入主板(对应于上述待测试设备)。
测试设备上设计有USB接口均通过USB线接入到主板,USB接口在治具上模拟成串口,在主板系统下增加一个串口,治具与主板通过此模拟串口进行通信。将测试设备的USB接口和IPMB接口分别与主板相应接口相连;
步骤S406,开机启动操作系统。
主板通过USB中的电源线路实现给治具的供电。测试设备上电启动,PSOC内部固件开始执行。
步骤S408,运行主板测试系统。
在PSOC固件中实现相应的功能,获取并组织测试结果,与主板通信,将测试结果通过USB串口发送到主板。由于主板测试项较多,IPMB接口测试时机需由主板端测试程序决定,所以治具通过USB接口等待主板发送启动命令。
步骤S410,等待主板发送启动命令“IPMB_TEST_START”。
步骤S412,返回测试结构。
测试设备通过IPMB协议发送请求到主板,开始计时,如果在特定时间内收到主板的应答数据,停止计时并解析数据,如果数据正确,则认为测试成功;如果在特定时间内未收到应答数据或判断应该数据错误,则认为测试失败;PSOC将测试结果通过字符串形式发送给主板,成功发送“IPMB_TEST_SUC”,失败则发送“IPMB_TEST_FAIL”;主板测试系统读该串口获取测试结果。
在前述实施例中,利用PSOC及相关外围部件开发一种小型治具,即测试设备,并开发相关固件实现通过IPMB协议与主板通信,基于板卡测试需求,治具内固件并不需要实现完整的IPMB协议通信,只需实现简单的请求与应答即可,实现对主板上IPMB接口的检测;本发明解决了工厂无法对主板IPMB接口进行测试的问题,实现了工厂对主板IPMB接口从无法测试到可以测试的质的改变,实现了对主板IPMB接口的覆盖,提高主板测试的覆盖率,提高良率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种测试设备,该设备用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
在本实施例中提供了一种测试设备,用于执行上述任一项实施例所述的方法,包括:
测试接口,所述测试接口与所述待测试设备中包括的待测试接口连接,所述测试接口与所述待测试接口类型相同;
芯片,所述芯片与所述测试接口连接,用于在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过所述测试接口以及待测试接口向所述待测试设备发送所述开始测试请求,并接收待测试设备通过所述待测试接口反馈的测试应答数据,基于所述测试应答数据确定测试结果。
通过本申请,测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过待测试接口向待测试设备发送开始测试请求,待测试设备在接收到开始测试请求后,可以根据开始测试请求反馈测试应答数据;测试设备接收待测试设备通过待测试接口反馈的测试应答数据,并根据测试应答数据确定测试结果。由于在对待测试设备的待测试接口进行测试时,可以通过第一协议对测试请求进行打包,通过第二协议发送开始测试请求。通过待测试接口传输开始测试请求以及测试应答数据,并根据测试应答数据确定测试结果。因此,可以解决相关技术中存在的无法测试主板上的接口的问题,达到测试主板上的接口的效果,提高了测试效率。
在一个示例性实施例中,所述测试设备还包括目标接口,所述目标接口与所述芯片连接,所述目标接口还与所述待测试设备中包括的与所述目标接口同类型的接口连接,所述待测试设备通过所述目标接口为所述测试设备供电,所述待测试设备通过所述目标接口向所述测试设备发送所述测试启动指令,所述测试设备通过所述目标接口向所述待测试设备发送测试结果。
在上述实施例中,目标接口可以是USB接口、type-b接口、type-c接口。相应地,当目标接口为USB接口时,待测试设备中也可以设置USB接口;当目标接口为type-c接口时,待测试设备中的接口也可以为type-c接口;当目标接口为type-b接口时,待测试设备中的接口也可以为type-b接口。当目标接口为USB接口时,测试设备和待测试设备可以通过USB接口以及待测试接口,如IPMB接口连接。测试设备可以通过USB接口接收待测试设备发送的测试启动指令,也可以将测试结果通过USB接口发送给待测试设备。通过设置目标接口,实现了当待测试接口故障时,测试设备可以通过USB接口与待测试设备进行通信,防止出现测试设备与待测试设备无法通信的情况发生。
在上述实施例中,待测试设备还可以通过目标接口为测试设备供电。利用待测试设备为测试设备供电,在测试设备中无需设置电源接口,减小了测试设备的体积,同时也减少了生产测试设备的成本。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种接口测试方法,其特征在于,包括:
测试设备在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求;
利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求,以指示所述待测试设备基于所述开始测试请求反馈测试应答数据;
接收待测试设备通过所述待测试接口反馈的测试应答数据;
基于所述测试应答数据确定测试结果。
2.根据权利要求1所述的方法,其特征在于,在通过第一协议对测试请求进行打包之前,所述方法还包括:
开发测试接口,以通过所述测试接口实现所述第一协议中的请求功能以及应答功能,其中,所述测试接口与所述待测试接口的类型相同。
3.根据权利要求1所述的方法,其特征在于,通过第一协议对测试请求进行打包,得到开始测试请求包括:
为所述测试请求分配命令域以及请求消息序列号;
通过所述第一协议对所述命令域、所述请求消息序列号、所述测试设备的地址以及所述测试设备的网络功能号进行打包,得到所述开始测试请求。
4.根据权利要求1所述的方法,其特征在于,利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求包括:
调用与所述第二协议对应的数据发送函数;
利用所述数据发送函数通过所述待测试接口向所述测试设备发送所述开始测试请求。
5.根据权利要求1所述的方法,其特征在于,基于所述测试应答数据确定测试结果包括:
解析所述测试应答数据,得到解析应答数据,其中,所述解析应答数据中包括从地址、命令域、请求消息序列号、逻辑单元号;
将所述解析应答数据与所述开始测试请求中存在不同的数据的情况下,确定所述测试结果为测试失败;
在所述解析应答数据与所述开始测试请求中的数据相同的情况下,确定所述测试结果为测试成功。
6.根据权利要求1所述的方法,其特征在于,在利用第二协议通过待测试接口向所述待测试设备发送所述开始测试请求之后,所述方法还包括:
在预定时间段内未收到所述测试应答数据的情况下,确定测试结果为测试失败。
7.根据权利要求1所述的方法,其特征在于,在基于所述测试应答数据确定测试结果之后,所述方法还包括:
通过目标接口将所述测试结果发送给所述待测试设备。
8.一种测试设备,其特征在于,用于执行如权利要求1至7任一项所述的方法,包括:
测试接口,所述测试接口与所述待测试设备中包括的待测试接口连接,所述测试接口与所述待测试接口类型相同;
芯片,所述芯片与所述测试接口连接,用于在接收到待测试设备发送的测试启动指令的情况下,通过第一协议对测试请求进行打包,得到开始测试请求,利用第二协议通过所述测试接口以及待测试接口向所述待测试设备发送所述开始测试请求,并接收待测试设备通过所述待测试接口反馈的测试应答数据,基于所述测试应答数据确定测试结果。
9.根据权利要求8所述的测试设备,其特征在于,所述测试设备还包括目标接口,所述目标接口与所述芯片连接,所述目标接口还与所述待测试设备中包括的与所述目标接口同类型的接口连接,所述待测试设备通过所述目标接口为所述测试设备供电,所述待测试设备通过所述目标接口向所述测试设备发送所述测试启动指令,所述测试设备通过所述目标接口向所述待测试设备发送所述测试结果。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310905361.XA CN116860647A (zh) | 2023-07-21 | 2023-07-21 | 接口测试方法、测试设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310905361.XA CN116860647A (zh) | 2023-07-21 | 2023-07-21 | 接口测试方法、测试设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116860647A true CN116860647A (zh) | 2023-10-10 |
Family
ID=88218958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310905361.XA Pending CN116860647A (zh) | 2023-07-21 | 2023-07-21 | 接口测试方法、测试设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116860647A (zh) |
-
2023
- 2023-07-21 CN CN202310905361.XA patent/CN116860647A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8275599B2 (en) | Embedded bus emulation | |
CN115210589A (zh) | 一种芯片测试装置及测试方法 | |
US11893331B2 (en) | Device verification method, UVM verification platform, electronic apparatus and storage medium | |
US11507718B1 (en) | Chip verification system and verification method therefor | |
CN109660386B (zh) | 一种半导体存储器老化测试系统软件升级方法 | |
CN110083366B (zh) | 应用运行环境的生成方法、装置、计算设备及存储介质 | |
CN109491909A (zh) | 一种cpld刷新验证方法、装置、终端及存储介质 | |
CN108259895A (zh) | 机顶盒测试方法、系统及终端设备 | |
CN117041111A (zh) | 车云功能测试方法、装置、电子设备及存储介质 | |
CN115599191B (zh) | 智能网卡的上电方法及上电装置 | |
CN116860647A (zh) | 接口测试方法、测试设备以及存储介质 | |
US10445201B2 (en) | System and method for automated integration and stress testing of hardware and software service in management controller using containerized toolbox | |
CN114490226A (zh) | Fpga芯片的原型验证方法、装置、计算机设备及介质 | |
CN115858256A (zh) | 一种物联网设备的测试方法、装置及电子设备 | |
CN109450682B (zh) | 一种ib网卡连通配置方法、装置、终端及存储介质 | |
CN113672260A (zh) | 一种处理器cpu初始化方法 | |
CN104956355B (zh) | 分布式测试系统架构 | |
CN115361327B (zh) | 一种自动化测试网卡ncsi命令的方法、装置、终端及介质 | |
CN113608935B (zh) | 一种测试网卡的方法、系统、设备及介质 | |
CN113835762B (zh) | 硬盘背板默认配置更新方法及系统 | |
CN113626821B (zh) | 服务器mac地址无线刷录方法、系统、终端及存储介质 | |
CN114115955B (zh) | 服务器资源盒子fpga固件升级方法、系统、终端及存储介质 | |
CN115665021A (zh) | 一种通信验证系统、方法、装置、设备及存储介质 | |
CN118012762A (zh) | 用于嵌入式操作系统消息传递机制测试的辅助方法 | |
CN117494629A (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 |