CN113157508A - 嵌入式系统的测试方法、系统、装置、设备及存储介质 - Google Patents
嵌入式系统的测试方法、系统、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN113157508A CN113157508A CN202110430851.XA CN202110430851A CN113157508A CN 113157508 A CN113157508 A CN 113157508A CN 202110430851 A CN202110430851 A CN 202110430851A CN 113157508 A CN113157508 A CN 113157508A
- Authority
- CN
- China
- Prior art keywords
- tested
- test
- hardware
- board card
- embedded system
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本申请公开了一种嵌入式系统的测试方法、系统、装置、设备及存储介质,基于硬件对接板卡实现被测嵌入式系统所需的硬件模块,利用硬件对接板卡与被测嵌入式系统所在被测板卡的第一端连接,利用测试主机分别与被测板卡的第二端和硬件对接板卡连接,从而在测试主机上,基于由测试主机、硬件对接板卡和被测板卡构成的硬件回环,执行对被测嵌入式系统预设的测试用例,得到测试用例的执行结果,根据各测试用例的执行结果得到被测嵌入式系统的测试结果,实现了被测嵌入式系统硬件功能的回环测试,无需测试人员手动登录被测嵌入式系统触发测试,也无需测试人员利用测试仪器导出被测板卡的硬件信号进行人工判定,极大提高了嵌入式系统测试的自动化水平。
Description
技术领域
本申请涉及嵌入式系统技术领域,特别是涉及一种嵌入式系统的测试方法、系统、装置、设备及存储介质。
背景技术
嵌入式系统是一套专用的计算机应用系统,应用于通信电子,医疗,工业控制等诸多领域。和大多数计算机系统一样,嵌入式系统由硬件层、驱动层、操作系统层,应用层这四个层次组成,但特征是其硬件的嵌入性以及应用的专用性。嵌入式系统的核心是嵌入式处理器,它是控制、辅助系统运行的核心要素,通常配合外围电路及器件形成嵌入式系统中的硬件单元。
关于嵌入式系统的测试验证,主要对象是由驱动和操作系统组成的软件单元,以及嵌入式处理器和外围器件组成的硬件单元。验证的目的是判断硬件单元的各个模块是否正确且长期稳定工作,以及判断软件单元的设计以及更新迭代是否达到应用要求。
现有的嵌入式系统测试方案大多是在被测嵌入式系统的应用层开发应用程序实现,在应用程序中完成对驱动和硬件功能的验证,再通过脚本对这些应用程序进行批量化集成。在进行测试之前,需要针对性地设计被测嵌入式系统的硬件模块,适配的硬件模块主要以特殊应用集成电路(Application Specific Integrated Circuit,ASIC)和PCB板卡的形式呈现。在进行测试时,需要测试人员登录被测嵌入式系统以开启测试,对于被测嵌入式系统所在板卡的执行结果需要通过测试仪器(例如示波器)导出信号进行查看,并由测试人员判定测试结果。
可以看到,现有的嵌入式系统的测试没有实现全自动化的测试,只能通过被测嵌入式系统执行测试脚本的半自动化方式进行,需要人工干预的点较多,测试系统脱离人工干预无法通过简单的输入或输出得到测试用例的执行结果。
发明内容
本申请的目的是提供一种嵌入式系统的测试方法、系统、装置、设备及存储介质,用于提高对嵌入式系统的测试的自动化水平。
为解决上述技术问题,本申请提供一种嵌入式系统的测试方法,基于测试主机,包括:
基于由所述测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果;
根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果;
其中,所述硬件对接板卡与所述被测板卡的第一端连接,所述测试主机分别与所述被测板卡的第二端和所述硬件对接板卡连接,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块。
可选的,所述硬件对接板卡具体为可编程控制器。
可选的,所述基于由所述测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果,具体包括:
向所述硬件对接板卡发送第一测试用例中的第一控制命令以使所述硬件对接板卡向所述被测板卡发送第一硬件信号,接收所述被测板卡在接收到所述第一硬件信号后反馈的第一反馈信息,根据所述第一硬件信号和所述第一反馈信息得到所述第一测试用例的执行结果;
向所述被测板卡发送第二测试用例中的第二控制命令使所述被测板卡向所述硬件对接板卡发送第二硬件信号,接收所述硬件对接板卡在接收到所述第二硬件信号后反馈的第二反馈信息,根据所述第二硬件信号和所述第二反馈信息得到所述第二测试用例的执行结果。
可选的,还包括:
向所述被测板卡发送第三测试用例中的第三控制命令以使所述被测板卡执行所述被测嵌入式系统的内部测试,接收所述被测板卡反馈的第三反馈信息,根据所述第三控制命令和所述第三反馈信息得到所述第三测试用例的执行结果。
可选的,还包括:
基于所述硬件对接板卡向所述被测板卡的存储介质写入所述被测嵌入式系统的系统镜像文件。
为解决上述技术问题,本申请还提供一种嵌入式系统的测试系统,包括:与被测嵌入式系统所在的被测板卡的第一端连接的硬件对接板卡,以及分别与所述被测板卡的第二端和所述硬件对接板卡连接的测试主机;
其中,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块;
所述测试主机用于基于由所述测试主机、所述硬件对接板卡和所述被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果,根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果。
可选的,所述硬件对接板卡具体为可编程控制器。
为解决上述技术问题,本申请还提供一种嵌入式系统的测试装置,包括:
测试单元,用于基于由测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果;
分析单元,用于根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果;
其中,所述硬件对接板卡与所述被测板卡的第一端连接,所述测试主机分别与所述被测板卡的第二端和所述硬件对接板卡连接,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块。
为解决上述技术问题,本申请还提供一种嵌入式系统的测试设备,包括:
存储器,用于存储指令,所述指令包括上述任意一项所述嵌入式系统的测试方法的步骤;
处理器,用于执行所述指令。
为解决上述技术问题,本申请还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任意一项所述嵌入式系统的测试方法的步骤。
本申请所提供的嵌入式系统的测试方法,基于硬件对接板卡实现被测嵌入式系统所需的硬件模块,利用硬件对接板卡与被测嵌入式系统所在的被测板卡的第一端连接,利用测试主机分别与被测板卡的第二端和硬件对接板卡连接,从而在测试主机上,基于由测试主机、硬件对接板卡和被测板卡构成的硬件回环,执行对被测嵌入式系统预设的测试用例,得到测试用例的执行结果,根据各测试用例的执行结果得到被测嵌入式系统的测试结果,从而实现了被测嵌入式系统硬件功能的回环测试,无需测试人员手动登录被测嵌入式系统触发测试,也无需测试人员利用测试仪器导出被测板卡的硬件信号进行人工判定,极大提高了对嵌入式系统的测试的自动化水平。
本申请还提供了一种嵌入式系统的测试系统、装置、设备及存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种嵌入式系统的测试系统的结构示意图;
图2为本申请实施例提供的一种测试主机与被测板卡之间的层次关系示意图;
图3为本申请实施例提供的一种嵌入式系统的测试方法的流程图;
图4为本申请实施例提供的一种嵌入式系统的测试方法的加载示意图;
图5为本申请实施例提供的一种嵌入式系统的测试方法的工程部署示意图;
图6为本申请实施例提供的一种嵌入式系统的测试方法的数据方向示意图;
图7为本申请实施例提供的一种嵌入式系统的测试装置的结构示意图;
图8为本申请实施例提供的一种嵌入式系统的测试设备的结构示意图;
其中,101为测试主机,102为硬件对接板卡,103为被测板卡。
具体实施方式
本申请的核心是提供一种嵌入式系统的测试方法、系统、装置、设备及存储介质,用于提高对嵌入式系统的测试的自动化水平。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于理解,首先对本申请提供的嵌入式系统的测试系统进行介绍。
图1为本申请实施例提供的一种嵌入式系统的测试系统的结构示意图;
图2为本申请实施例提供的一种测试主机与被测板卡之间的层次关系示意图。
如图1所示,本申请实施例提供的嵌入式系统的测试系统包括:与被测嵌入式系统所在的被测板卡103的第一端连接的硬件对接板卡102,以及分别与被测板卡103的第二端和硬件对接板卡102连接的测试主机101;
其中,硬件对接板卡102具有与被测嵌入式系统的待测硬件接口对接的硬件模块;
测试主机101用于基于由测试主机101、硬件对接板卡102和被测板卡103构成的硬件回环,执行对被测嵌入式系统预设的测试用例,得到测试用例的执行结果,根据各测试用例的执行结果得到被测嵌入式系统的测试结果。
自动化测试,是指以最大化地减少人为干预的方式完成对测试对象的验证,通常由另一套计算机系统完成各种测试用例的提交、运行,报告等流程。而现有的嵌入式系统自动化测试方案采用在应用层运行测试脚本的方式执行,无法实现全自动化的方式,测试系统脱离人工干预无法通过简单的输入或输出得到测试用例的正确或错误的结果。应用脚本无法动态的启动和停止,一旦操作系统启动,将自主运行直到所有测试用例完成,并且生成的报告也只能暂存在目标系统中,还需通过批量传输至主机端才能得到最终的测试报告。且对于在不同硬件环境如不同的系统工作时钟和功耗下,测试脚本显然无法达到改变自身硬件环境的验证要求,其局限性比较大。这归根结底在于现有技术没有一个顶层的设计实现硬件回环的测试以实现自动化。
故本申请实施例提供的嵌入式系统的测试系统通过设计测试主机101连同硬件对接板卡102和被测板卡103构成硬件回环,利用硬件对接板卡102适配被测板卡103的硬件接口,测试主机101基于该硬件回环验证被测嵌入式系统的硬件控制功能,能够方便地对被测板卡103的环境进行调试,且能够在测试主机101上运行测试工具自动执行各类测试用例并自动进行测试用例结果的判断与整个测试结果的判断,并得到最终的测试报告,以实现真正意义的自动化。
在具体实施中,被测板卡103上主要包括被测嵌入式系统的嵌入式处理器和一些外围电路。通过硬件对接板卡102针对性地实现被测嵌入式系统中的硬件模块,以便验证被测嵌入式系统的硬件输入输出是否正确。由于嵌入式系统所需的硬件模块定制性较强,开发PCB板卡等作为硬件对接板卡102不仅耗时耗力,还抬高了测试成本。故硬件对接板卡102优选采用可编程控制器,以通过设计可编程控制器代码的方式定制被测嵌入式系统所需的硬件模块,能够灵活地提供硬件接口与被测板卡103对接,并能灵活地调整被测嵌入式系统的硬件环境参数。且能够实现对被测嵌入式系统的硬件单元的环境进行调整,从而更加全面地验证被测嵌入式系统的硬件单元在不同环境下的工作状况。硬件对接板卡102可以采用现场可编程逻辑门阵列(Field Programmable Gate Array,下文简称FPGA)实现。
测试主机101用于运行测试工具,且可以按照预设的分析规则生成被测嵌入式系统最终的测试报告,通过邮件等形式进行测试报告的分发。
测试主机101和被测板卡103之间需要通过通用异步收发传输器(UniversalAsynchronous Receiver/Transmitter,下文简称UART)、通用串行总线(Universal SerialBus,下文简称USB)或网线连接,以实现命令和文件的传输。此外,测试主机101还可以与被测板卡103的联合测试行为组织(Joint Test Action Group,下文简称JTAG)接口连接,从而对被测嵌入式系统的嵌入式处理器的启动阶段进行调试。
硬件对接板卡102和测试主机101之间同样可以通过UART、USB或网线连接,以实现对被测嵌入式系统的硬件模块的配置和位流更新、复位等操作。
硬件对接板卡102和被测板卡103之间需要针对测试需求设计信号接口,如通用输入/输出口(General Purpose Input Output,下文简称GPIO)、I2C(Inter-IntegratedCircuit)、复位(RESET)接口等,用以测试被测嵌入式系统的硬件输出是否正确,并可对其进行复位操作。此外,硬件对接板卡102还可以和被测板卡103的存储介质(如NAND Flash/eMMC)连接,以便将被测嵌入式系统的系统镜像文件覆盖写入存储介质,从而进行被测嵌入式系统软件单元的更新迭代测试。
可选的,为减少物理连接带来的环境部署障碍,在本申请实施例提供的嵌入式系统的测试系统中,测试主机101与硬件对接板卡102之间、测试主机101与被测板卡103之间均可以采用无线通信连接,而被测板卡103和硬件对接板卡102之间为了进行被测嵌入式系统的硬件测试必须包括有线连接,故可以将无线模块作为单独的单元连同被测板卡103和硬件对接板卡102一起布置在测试主机101的远端。
在本申请实施例提供的嵌入式系统的测试系统中,测试主机101和被测板卡103之间的层次关系如图2所示,在物理层(PHY),测试主机101的物理层和被测板卡103的物理层直接通过网线或UART连接,同时存在硬件对接板卡102在中间构成的硬件信号的回环,即可以由测试主机101通过上层命令的方式让被测板卡103输出信号,该信号由硬件对接板卡102捕获验证,将验证结果发回测试主机101形成闭环,测试主机101根据收到的结果判断测试用例是否执行通过。
在物理层之上是操作系统层(OS),此层包含了软件单元中的操作系统和驱动,提供了对物理层硬件资源的管理和对上层应用软件的运行环境支持。本申请实施例提供的嵌入式系统的测试系统可以适配采用Linux操作系统的被测嵌入式系统,而测试主机101可以采用Linux操作系统或Windows操作系统。
在操作系统层之上运行的是自动化测试引擎(Test Engine),其程序内部包含了通信传输层(Transport)和测试用例层(Test Cases)。通信传输层用于实现命令或文件的传输交互。测试用例层是基于测试主机101开发部署的、用于控制被测板卡103运行并反馈报告的执行层,以进行对被测嵌入式系统的自动化测试。
在现有技术中,对于一些如硬件输入输出(IO)无硬件回环的操作,部署于被测嵌入式系统的测试脚本无法判断被测嵌入式系统的硬件单元是否正确地输出,只能通过测试仪器(如示波器)的波形显示,由人工及时干预的方式判断测试用例是否通过,这种方式达不到自动化的效果,大大降低了测试效率。因此在本申请实施例提供的嵌入式系统的测试系统中,测试主机101还可以通过美国国家仪器公司(National Instruments,NI)提供的通用接口总线(General-Purpose Interface Bus,GPIB)接口连接示波器,使用其提供的驱动和系统库便可以实现示波器的图像和数据参数的获取。具体地,测试主机101可以通过USB转GPIB接口接入示波器,并将示波器探头连接在被测板卡103的待测硬件接口上,测试主机101在测试引擎上触发捕获操作,即可获得示波器的图像和数据参数。在获得示波器的图像和数据参数后,测试主机101可以根据这些数据生成数据文件和信号截图。
在上述本申请实施例提供的嵌入式系统的测试系统的基础上,下面结合附图对本申请实施例提供的嵌入式系统的测试方法进行说明。
图3为本申请实施例提供的一种嵌入式系统的测试方法的流程图;图4为本申请实施例提供的一种嵌入式系统的测试方法的加载示意图;图5为本申请实施例提供的一种嵌入式系统的测试方法的工程部署示意图;图6为本申请实施例提供的一种嵌入式系统的测试方法的数据方向示意图。
如图3所示,基于测试主机,本申请实施例提供的嵌入式系统的测试方法包括:
S301:基于由测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对被测嵌入式系统预设的测试用例,得到测试用例的执行结果。
S302:根据各测试用例的执行结果得到被测嵌入式系统的测试结果。
其中,硬件对接板卡与被测板卡的第一端连接,测试主机分别与被测板卡的第二端和硬件对接板卡连接,硬件对接板卡具有与被测嵌入式系统的待测硬件接口对接的硬件模块。
在具体实施中,预先设计硬件对接板卡以作为与被测嵌入式系统对接的硬件模块,连接测试主机、硬件对接板卡和被测板卡构成硬件回环。预先基于该硬件回环在测试主机上开发测试用例,并设计自动化执行脚本以执行各测试用例控制被测板卡运行并生成测试报告,乃至进行测试报告的分发。
如图4所示,测试主机本申请实施例提供的嵌入式系统的测试方法的过程可以以测试工程(Test Project)为调度单位,一个测试工程包括一个属性文件(Profile)和多个测试用例,以队列的方式被测试引擎加载运行。属性文件与测试工程一一对应,用于描述测试工程的配置和运行环境,可选的还可以用于描述测试报告的汇报方式和汇报对象。在测试主机上,每个测试工程使用单独的线程运行,可以在一个测试工程运行时加载另一个测试工程。
如图5所示,针对被测嵌入式系统率的工程目录可以存储于一个工程文件夹(Projects Folder)中,其中包含各测试工程对应的属性文件(profile 0、profile1……)。属性文件中可以包含测试用例集合(Test Cases)的路径、测试用例资源文件(Resources)的路径、测试工程的环境资源编译输出路径以及测试报告的存放路径。测试用例集合的路径通往文件(Profile)中的测试用例集合文件夹(Cases Folder),测试用例集合文件夹包括测试用例(Case 0、Case 1……)。测试用例资源文件的路径通往文件中的资源文件夹(Res Folder),资源文件夹中可以包括测试用例需要的应用程序编译器(app.c)、编译脚本和源码,也可包含其它工具集(tools)。环境资源编译输出路径通往输出文件夹(Output Folder),可以进一步包括输出子文件夹(output folder 0、output folder1……)。测试报告的存放路径通往测试报告文件夹(Report Folder),测试报告文件夹可以包括对应的测试工程的所有测试用例的报告目录(report folder 0、report folder1……),以及所有测试用例的运行结果汇总(project report)。每个测试用例的报告目录里存放着测试用例的执行结果,包含示波器截图和参数、测试日志文件等。
基于上述部署,对于步骤S301来说,测试主机基于硬件回环执行测试用例,具体为在测试主机运行测试用例以控制硬件对接板卡和被测板卡执行对应的操作,经过硬件回环后测试主机收到反馈信息,测试主机根据反馈信息分析得到测试用例的执行结果。
测试主机基于硬件回环执行测试用例,可以为从测试主机到被测板卡再到硬件对接板卡一个回环方向(如图6所示的方向1),也可以包括相反的回环方向(如图6所示的方向2),则步骤S301具体可以包括:
向硬件对接板卡发送第一测试用例中的第一控制命令以使硬件对接板卡向被测板卡发送第一硬件信号,接收被测板卡在接收到第一硬件信号后反馈的第一反馈信息,根据第一硬件信号和第一反馈信息得到第一测试用例的执行结果;
向被测板卡发送第二测试用例中的第二控制命令使被测板卡向硬件对接板卡发送第二硬件信号,接收硬件对接板卡在接收到第二硬件信号后反馈的第二反馈信息,根据第二硬件信号和第二反馈信息得到第二测试用例的执行结果。
其中,两种硬件回环方向之间无顺序关系,测试主机按照预先部署的测试工程和测试用例的顺序依次执行测试。
本申请上述实施例中提到的嵌入式系统的测试系统还可以包括设于被测板卡和测试主机之间的示波器。则基于上述实施例中嵌入式系统的测试系统中示波器的连接方式,在本申请实施例提供的嵌入式系统的测试方法中,测试主机获取被测板卡的硬件信号的方式具体可以为:测试主机触发示波器获取被测板卡的待测硬件接口的输出信号。
对于步骤S302来说,在完成全部测试用例的执行后,根据各测试用例的执行结果生成被测嵌入式系统的测试结果,生成方式包括但不限于为根据各测试用例记载的执行结果判定方式生成各测试用例执行结果的分值,以加权求和的方式得到被测嵌入式系统的整体分值;或检验全部测试用例执行的成功率;或按照测试用例的类型划分各类测试用例的评估标准,综合评估测试结果。
在生成测试结果之后,本申请实施例提供的嵌入式系统的测试方法还可以包括:按预设规则生成测试报告,并将测试报告发送至指定地址。测试主机可以按照各测试工程的属性文件记载的方式生成对应的测试报告,并按照配置进行测试报告的分发。
为进一步提高测试的自动化水平,在步骤S301之前,本申请实施例提供的嵌入式系统的测试方法还可以包括:基于JTAG接口对被测板卡的嵌入式处理器进行启动阶段调试。
另外,如上述实施例中嵌入式系统的测试系统所述,硬件对接板卡优选采用可编程控制器,如FPGA。通过设计可编程控制器代码的方式定制被测嵌入式系统所需的硬件模块,并按需调整可编程控制器的硬件参数。则在步骤S301之前,本申请实施例提供的嵌入式系统的测试方法还可以包括:测试主机向可编程控制器发送与被测嵌入式系统对应的硬件逻辑代码。
此外,测试主机还可以控制被测板卡的硬件环境参数,如稳定温度,特点压强,特点电源环境和时钟晶振环境等。
在上述实施例的基础上,为提高测试用例覆盖率,本申请实施例提供的嵌入式系统的测试方法还可以包括:
向被测板卡发送第三测试用例中的第三控制命令以使被测板卡执行被测嵌入式系统的内部测试,接收被测板卡反馈的第三反馈信息,根据第三控制命令和第三反馈信息得到第三测试用例的执行结果。
针对被测嵌入式系统中无需通过硬件端口向外呈现的信号,包括系统内存状态、多核运行状态、各种控制器状态等,如图6中的方向3所示,测试主机运行第三测试用例以对被测嵌入式系统进行内部测试,实现被测板卡的内部自检。
此外,嵌入式系统的测试往往在系统更新后进行。为进一步提高测试的自动化水平,基于上述实施例中提到的通过硬件对接板卡与被测板卡的存储介质的连接,本申请实施例提供的嵌入式系统的测试方法还可以包括:
基于硬件对接板卡向被测板卡的存储介质写入被测嵌入式系统的系统镜像文件。
现有的嵌入式系统测试方法无法在软件单元的迭代更新方面做到自动化,是因为测试脚本本身对软件单元有依赖而无法实现软件的更新操作。而本申请实施例提供的嵌入式系统的测试方法通过测试主机控制执行,可以在被测嵌入式系统的更新迭代测试中向被测板卡的存储介质写入被测嵌入式系统的系统镜像文件,以便测试主机判断被测嵌入式系统软件的设计一级更新迭代是否达到应用要求。
上文详述了嵌入式系统的测试系统、方法对应的各个实施例,在此基础上,本申请还公开了与上述方法对应的嵌入式系统的测试装置、设备及存储介质。
图7为本申请实施例提供的一种嵌入式系统的测试装置的结构示意图。
如图7所示,本申请实施例提供的嵌入式系统的测试装置包括:
测试单元701,用于基于由测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对被测嵌入式系统预设的测试用例,得到测试用例的执行结果;
分析单元702,用于根据各测试用例的执行结果得到被测嵌入式系统的测试结果;
其中,硬件对接板卡与被测板卡的第一端连接,测试主机分别与被测板卡的第二端和硬件对接板卡连接,硬件对接板卡具有与被测嵌入式系统的待测硬件接口对接的硬件模块。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图8为本申请实施例提供的一种嵌入式系统的测试设备的结构示意图。
如图8所示,本申请实施例提供的嵌入式系统的测试设备包括:
存储器810,用于存储指令,所述指令包括上述任意一项实施例所述的嵌入式系统的测试方法的步骤;
处理器820,用于执行所述指令。
其中,处理器820可以包括一个或多个处理核心,比如3核心处理器、8核心处理器等。处理器820可以采用数字信号处理DSP(Digital Signal Processing)、现场可编程门阵列FPGA(Field-Programmable Gate Array)、可编程逻辑阵列PLA(Programmable LogicArray)中的至少一种硬件形式来实现。处理器820也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器CPU(CentralProcessing Unit);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器820可以集成有图像处理器GPU(Graphics Processing Unit),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器820还可以包括人工智能AI(Artificial Intelligence)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器810可以包括一个或多个存储介质,该存储介质可以是非暂态的。存储器810还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器810至少用于存储以下计算机程序811,其中,该计算机程序811被处理器820加载并执行之后,能够实现前述任一实施例公开的嵌入式系统的测试方法中的相关步骤。另外,存储器810所存储的资源还可以包括操作系统812和数据813等,存储方式可以是短暂存储或者永久存储。其中,操作系统812可以为Windows。数据813可以包括但不限于上述方法所涉及到的数据。
在一些实施例中,嵌入式系统的测试设备还可包括有显示屏830、电源840、通信接口850、输入输出接口860、传感器870以及通信总线880。
本领域技术人员可以理解,图8中示出的结构并不构成对嵌入式系统的测试设备的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的嵌入式系统的测试设备,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如上所述的嵌入式系统的测试方法,效果同上。
需要说明的是,以上所描述的装置、设备实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。
为此,本申请实施例还提供一种存储介质,该存储介质上存储有计算机程序,计算机程序被处理器执行时实现如嵌入式系统的测试方法的步骤。
该存储介质可以包括:U盘、移动硬盘、只读存储器ROM(Read-Only Memory)、随机存取存储器RAM(Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例中提供的存储介质所包含的计算机程序能够在被处理器执行时实现如上所述的嵌入式系统的测试方法的步骤,效果同上。
以上对本申请所提供的一种嵌入式系统的测试方法、系统、装置、设备及存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备及存储介质而言,由于其与实施例公开的方法、系统相对应,所以描述的比较简单,相关之处参见方法、系统部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种嵌入式系统的测试方法,其特征在于,基于测试主机,包括:
基于由所述测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果;
根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果;
其中,所述硬件对接板卡与所述被测板卡的第一端连接,所述测试主机分别与所述被测板卡的第二端和所述硬件对接板卡连接,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块。
2.根据权利要求1所述的测试方法,其特征在于,所述硬件对接板卡具体为可编程控制器。
3.根据权利要求1所述的测试方法,其特征在于,所述基于由所述测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果,具体包括:
向所述硬件对接板卡发送第一测试用例中的第一控制命令以使所述硬件对接板卡向所述被测板卡发送第一硬件信号,接收所述被测板卡在接收到所述第一硬件信号后反馈的第一反馈信息,根据所述第一硬件信号和所述第一反馈信息得到所述第一测试用例的执行结果;
向所述被测板卡发送第二测试用例中的第二控制命令使所述被测板卡向所述硬件对接板卡发送第二硬件信号,接收所述硬件对接板卡在接收到所述第二硬件信号后反馈的第二反馈信息,根据所述第二硬件信号和所述第二反馈信息得到所述第二测试用例的执行结果。
4.根据权利要求1所述的测试方法,其特征在于,还包括:
向所述被测板卡发送第三测试用例中的第三控制命令以使所述被测板卡执行所述被测嵌入式系统的内部测试,接收所述被测板卡反馈的第三反馈信息,根据所述第三控制命令和所述第三反馈信息得到所述第三测试用例的执行结果。
5.根据权利要求1所述的测试方法,其特征在于,还包括:
基于所述硬件对接板卡向所述被测板卡的存储介质写入所述被测嵌入式系统的系统镜像文件。
6.一种嵌入式系统的测试系统,其特征在于,包括:与被测嵌入式系统所在的被测板卡的第一端连接的硬件对接板卡,以及分别与所述被测板卡的第二端和所述硬件对接板卡连接的测试主机;
其中,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块;
所述测试主机用于基于由所述测试主机、所述硬件对接板卡和所述被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果,根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果。
7.根据权利要求6所述的测试系统,其特征在于,所述硬件对接板卡具体为可编程控制器。
8.一种嵌入式系统的测试装置,其特征在于,包括:
测试单元,用于基于由测试主机、硬件对接板卡和被测嵌入式系统所在的被测板卡构成的硬件回环,执行对所述被测嵌入式系统预设的测试用例,得到所述测试用例的执行结果;
分析单元,用于根据各所述测试用例的执行结果得到所述被测嵌入式系统的测试结果;
其中,所述硬件对接板卡与所述被测板卡的第一端连接,所述测试主机分别与所述被测板卡的第二端和所述硬件对接板卡连接,所述硬件对接板卡具有与所述被测嵌入式系统的待测硬件接口对接的硬件模块。
9.一种嵌入式系统的测试设备,其特征在于,包括:
存储器,用于存储指令,所述指令包括权利要求1至5任意一项所述嵌入式系统的测试方法的步骤;
处理器,用于执行所述指令。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任意一项所述嵌入式系统的测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430851.XA CN113157508B (zh) | 2021-04-21 | 2021-04-21 | 嵌入式系统的测试方法、系统、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110430851.XA CN113157508B (zh) | 2021-04-21 | 2021-04-21 | 嵌入式系统的测试方法、系统、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113157508A true CN113157508A (zh) | 2021-07-23 |
CN113157508B CN113157508B (zh) | 2023-07-14 |
Family
ID=76867634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110430851.XA Active CN113157508B (zh) | 2021-04-21 | 2021-04-21 | 嵌入式系统的测试方法、系统、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113157508B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114554537A (zh) * | 2022-02-25 | 2022-05-27 | 中国人民解放军国防科技大学 | 一种基于软件通信体系结构的mac组件一致性测试方法 |
CN116820864A (zh) * | 2023-07-10 | 2023-09-29 | 北京鲲鹏凌昊智能技术有限公司 | 板卡多功能测试方法、装置、电子设备及存储介质 |
-
2021
- 2021-04-21 CN CN202110430851.XA patent/CN113157508B/zh active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114554537A (zh) * | 2022-02-25 | 2022-05-27 | 中国人民解放军国防科技大学 | 一种基于软件通信体系结构的mac组件一致性测试方法 |
CN114554537B (zh) * | 2022-02-25 | 2024-01-23 | 中国人民解放军国防科技大学 | 一种基于软件通信体系结构的mac组件一致性测试方法 |
CN116820864A (zh) * | 2023-07-10 | 2023-09-29 | 北京鲲鹏凌昊智能技术有限公司 | 板卡多功能测试方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113157508B (zh) | 2023-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112270149B (zh) | 验证平台自动化集成方法、系统及电子设备和存储介质 | |
US8930912B2 (en) | Method and system for performing software verification | |
CN110554965B (zh) | 自动化模糊测试方法及相关设备、计算机可读存储介质 | |
KR20100041447A (ko) | 테스트 자동화 장치 및 테스트 자동화 방법 | |
CN105338110A (zh) | 远程调试方法和平台、服务器 | |
US8457945B1 (en) | Processor-in-the-loop co-simulation of a model | |
US11250193B1 (en) | Productivity platform using system-on-chip with programmable circuitry | |
TWI566090B (zh) | Debugging firmware / software to produce tracking systems and methods, recording media and computer program products | |
CN113157508B (zh) | 嵌入式系统的测试方法、系统、装置、设备及存储介质 | |
JP4959941B2 (ja) | ソフトウェアの双方向プロービング | |
US6442725B1 (en) | System and method for intelligent analysis probe | |
US9117018B2 (en) | Method of debugging software and corresponding computer program product | |
CN103176903B (zh) | MapReduce分布式系统程序的测试方法及设备 | |
KR20110037140A (ko) | 임베디드 소프트웨어 가상 개발 환경을 제공하는 시스템 | |
JP2008135008A (ja) | プログラムモジュール検証方式 | |
CN100403275C (zh) | 应用于固件程序除错的微处理器与方法 | |
US10430200B2 (en) | Slave processor within a system-on-chip | |
US10474610B1 (en) | Hardware trace and introspection for productivity platform using a system-on-chip | |
CN112765018B (zh) | 一种仪器仪表调试系统及方法 | |
CN108885574B (zh) | 用于监视和报告设计、编译和运行时的性能和正确性问题的系统 | |
CN109144849A (zh) | 一种嵌入式软件调测方法 | |
CN114328045A (zh) | 一种bmc的i2c调试方法、系统、装置及计算机可读存储介质 | |
KR101251792B1 (ko) | 디버거를 이용한 임베디드 소프트웨어 단위 테스트 자동화 장치 및 방법 | |
CN112765021A (zh) | 一种引导程序的调试检验方法、装置、设备及存储介质 | |
JP5120103B2 (ja) | デバッグ方法およびデバッグプログラム |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |