CN113094251B - 嵌入式系统测试方法、装置、计算机设备和存储介质 - Google Patents

嵌入式系统测试方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN113094251B
CN113094251B CN201911335402.6A CN201911335402A CN113094251B CN 113094251 B CN113094251 B CN 113094251B CN 201911335402 A CN201911335402 A CN 201911335402A CN 113094251 B CN113094251 B CN 113094251B
Authority
CN
China
Prior art keywords
test
embedded system
preset
output result
target
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.)
Active
Application number
CN201911335402.6A
Other languages
English (en)
Other versions
CN113094251A (zh
Inventor
廖淳创
彭宏飞
傅东生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Miracle Intelligent Network Co Ltd
Original Assignee
Shenzhen Miracle Intelligent Network Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Miracle Intelligent Network Co Ltd filed Critical Shenzhen Miracle Intelligent Network Co Ltd
Priority to CN201911335402.6A priority Critical patent/CN113094251B/zh
Publication of CN113094251A publication Critical patent/CN113094251A/zh
Application granted granted Critical
Publication of CN113094251B publication Critical patent/CN113094251B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请涉及一种嵌入式系统测试方法、装置、计算机设备和存储介质。所述方法包括:获取预先编排好的多于一组的测试用例;根据预设业务需求,依次从测试用例中,确定当前待使用的目标测试用例;目标测试用例包括目标测试数据和预设输出结果;根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将目标测试用例中的目标测试数据发送至嵌入式系统;发送的目标测试数据用于指示嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;接收嵌入式系统反馈的、且与各测试用例对应的测试输出结果;根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统进行测试的测试结果。采用本方法能够提升嵌入式系统测试效率。

Description

嵌入式系统测试方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种嵌入式系统测试方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,出现了嵌入式技术。嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。通常,嵌入式系统是用于执行独立功能的专用计算机系统。它由包括微处理器、定时器、微控制器、存储器、传感器等一系列微电子芯片与器件,和嵌入在存储器中的微型操作系统、控制应用软件组成,共同实现诸如实时控制、监视、管理、移动计算、数据处理等各种自动化处理任务。嵌入式系统以应用为中心,以微电子技术、控制技术、计算机技术和通讯技术为基础,强调硬件软件的协同性与整合性。为保证嵌入式系统的正常运作,通常需要对嵌入式系统进行测试。传统的嵌入式系统测试,主要以人工测试加一些简单的本地脚本测试来实现。
然而,传统的嵌入式系统测试方法需要人为操作,执行效率低,且测试过程中容易出错,从而导致嵌入式系统测试效率低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升嵌入式系统测试效率的嵌入式系统测试方法、装置、计算机设备和存储介质。
一种嵌入式系统测试方法,所述方法包括:
获取预先编排好的多于一组的测试用例;
根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
一种嵌入式系统测试装置,所述装置包括:
获取模块,用于获取预先编排好的多于一组的测试用例;
确定模块,用于根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
发送模块,用于根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收模块,用于接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
确定模块还用于根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取预先编排好的多于一组的测试用例;
根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取预先编排好的多于一组的测试用例;
根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
上述嵌入式系统测试方法、装置、计算机设备和存储介质,根据预设业务需求,控制预先编排好的多于一组的测试用例依次自动执行。将确定当前执行的目标测试用例中的目标测试数据发送至待测试的嵌入式系统,嵌入式系统根据目标测试数据进行相应的数据处理,得到测试输出结果。将各测试用例的测试输出结果和目标测试用例中的预设输出结果进行对比,得到对嵌入式系统进行测试的测试结果。这样,可自动化完成对嵌入式系统的测试,避免了人为控制测试过程,提升了嵌入式系统测试效率。
附图说明
图1为一个实施例中嵌入式系统测试方法的应用场景图;
图2为一个实施例中嵌入式系统测试方法的流程示意图;
图3为一个实施例中嵌入式系统测试方法的数据流向示意图;
图4为一个实施例中嵌入式系统测试装置的结构框图;
图5为另一个实施例中嵌入式系统测试装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的嵌入式系统测试方法,可以应用于如图1所示的应用环境中。该应用环境包括测试设备102和嵌入式系统104。测试设备102与嵌入式系统104通过网络进行通信。其中,测试设备102可以是终端也可以是服务器,终端具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。本领域技术人员可以理解,图1中示出的应用环境,仅仅是与本申请方案相关的部分场景,并不构成对本申请方案应用环境的限定。
测试设备102获取预先编排好的多于一组的测试用例。测试设备102根据预设业务需求,依次从测试用例中,确定当前待使用的目标测试用例;目标测试用例包括目标测试数据和预设输出结果。测试设备102根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将目标测试用例中的目标测试数据发送至嵌入式系统104;发送的目标测试数据用于指示嵌入式系统104基于目标测试数据进行数据处理,得到测试输出结果。接收嵌入式系统104反馈的、且与各测试用例对应的测试输出结果。测试设备102根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统104进行测试的测试结果。
在一个实施例中,如图2所示,提供了一种嵌入式系统测试方法,以该方法应用于图1中的测试设备102为例进行说明,包括以下步骤:
S202,获取预先编排好的多于一组的测试用例。
其中,测试用例是对一项特定的软件产品进行测试任务的描述,用于体现测试方案、方法、技术和策略。测试用例的内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档。可以理解,测试用例是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。测试用例的设计方法主要有黑盒测试法和白盒测试法。黑盒测试也称功能测试,黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。
具体地,测试设备可按预设规则将多于一组的测试用例在本地进行编排,得到编排好的多于一组的测试用例,进而设备测试可获取预先编排好的多于一组的测试用例。
在一个实施例中,测试设备具体可接收外部设备发送来的预先编排好的多于一组的测试用例。测试设备也可按照预设规则,在本地对多于一组的测试用例进行编排,得到预先编排好的多于一组的测试用例。预先编排好的多于一组的测试用例可用于依次测试单个业务点的功能。
S204,根据预设业务需求,依次从测试用例中,确定当前待使用的目标测试用例;目标测试用例包括目标测试数据和预设输出结果。
其中,目标测试用例是测试设备选择的当前待使用的测试用例,用于测试嵌入式系统的功能是否完善。目标测试数据是当前待使用的目标测试用例中的输入数据,用于作为目标测试用例的输入。预设输出结果是目标测试数据根据预设运算得到的输出结果,用于作为目标测试用例的参考输出。
具体地,测试设备本地存储有预先编排好的多于一组测试用例,进而测试设备可获取业务需求,并根据该业务需求,依次从预先编排好的多于一组测试用例中,确定当前待使用的目标测试用例。测试设备可通过该目标测试用例测试嵌入式系统运作是否正常。
S206,根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将目标测试用例中的目标测试数据发送至嵌入式系统;发送的目标测试数据用于指示嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果。
其中,预设协议是一种网络通信协议,用于测试设备与嵌入式系统之间的通信。比如,预设协议具体可以是SSH(Secure Shell,安全外壳协议)协议。SSH协议是一种建立在应用层基础上的安全协议。SSH协议是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。预设指令是一种计算机可读指令,用于指示测试设备进行相应的操作。比如,预设指令具体可以是嵌入式系统的linux命令。linux命令是一种对linux系统进行管理的命令。对于linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,linux系统管理的命令是它正常运行的核心。
具体地,目标测试用例中的目标测试数据可用于测试嵌入式系统的运作状态。测试设备可获取与待测试的嵌入式系统对应的预设协议和预设指令,进而测试设备可根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将目标测试用例中的目标测试数据发送至嵌入式系统。嵌入式系统可接收目标测试数据,进而嵌入式系统可基于目标测试数据进行数据处理,得到测试输出结果。
在一个实施例中,测试设备可基于SSH协议,远程调用嵌入式系统的linux命令,进而获取linux命令的执行结果。测试设备可根据执行结果的不同,执行对应的数据处理流程,从而实现模拟人工交互式的操作嵌入式系统的目的。举例说明,测试设备可动态获取某个程序的进程信息,根据进程信息按业务需求设定处理流程。比如,查看父进程的编号和关闭进程等。
在一个实施例中,测试设备可通过linux命令对进程进行查找显示。比如,在linux命令ps-ef|grep'/home/helife/tomcat-wap/'|grep-v"grep"中,ps是linux下最常用的也是非常强大的进程查看命令,可将某个进程显示出来。grep命令是查找。中间的|是管道命令,是指ps命令与grep同时执行。grep-v是反向查找。因此,linux命令ps-ef|grep'/home/helife/tomcat-wap/'|grep-v"grep",表示查看包含'/home/helife/tomcat-wap/'但不包含"grep"的进程。
S208,接收嵌入式系统反馈的、且与各测试用例对应的测试输出结果。
具体地,测试设备可根据预设业务需求,依次从预先编排好的多于一组的测试用例中选择当前使用的测试用例,并依次发送至嵌入式系统进行运算得到与当前使用的测试用例对应的测试输出结果,进而测试设备可依次接收嵌入式系统反馈的、且与各测试用例对应的测试输出结果。
S210,根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统进行测试的测试结果。
具体地,测试设备可依次从多于一组的测试用例中选择当前使用的测试用例进行测试,进而多于一组的各测试用例可分别对应有各自的测试输出结果和预设输出结果。测试设备可根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统进行测试的测试结果。
在一个实施例中,如图3所示,测试设备中集成有远程操作嵌入式软件模块、用例编排模块、持续集成对接模块以及测试结果记录模块。测试设备可通过成操作嵌入式软件模块与嵌入式系统进行通信。持续集成对接模块将远程操作嵌入式软件模块、用例编排模块以及测试结果记录模块封装成统一的API,通过统一API(Application ProgrammingInterface,应用程序接口),可对接持续集成工具。用例编排模块中存储有预先编排好的多于一组的测试用例,持续集成对接模块对接的持续集成工具可从用例编排模块中选择当前待执行的测试用例。测试设备将当前待测试的测试用例发送至远程操作嵌入式软件模块。远程操作嵌入式软件模块基于SSH协议和嵌入式系统的linux命令,将当前待测试的测试用例发送至嵌入式系统。嵌入式系统基于当前待测试的测试用例进行相关处理,得到测试输出结果。嵌入式系统将该测试输出结果发送给远程操作嵌入式软件模块。测试结果记录模块将测试输出结果和用来编排模板中的测试输出结果进行对比,得到嵌入式系统的测试结果并记录存储。
其中,持续集成工具(CI):是一种实践工具,可以让团队在持续的基础上收到反馈并进行改进,不必等到开发周期后期才寻找和修复缺陷。可以理解,对于开发人员的每一次代码提交,都自动地把Repository(仓库)中所有代码Check out(核查)到一个空目录,并且自动运行所有Test Case(测试用例)。如果成功则接受这次提交,否则告诉所有相关开发人员,这是一个失败的Revision(修改)。
在一个实施例中,测试设备可根据测试失败的测试结果生成告警信息,进而测试设备可将告警信息和与该告警信息相关的数据推送给相关的技术人员。技术人员可根据收到的告警信息,精确定位到嵌入式系统中发生错误的功能模块。
上述嵌入式系统测试方法中,根据预设业务需求,控制预先编排好的多于一组的测试用例依次自动执行。将确定当前执行的目标测试用例中的目标测试数据发送至待测试的嵌入式系统,嵌入式系统根据目标测试数据进行相应的数据处理,得到测试输出结果。将各测试用例的测试输出结果和目标测试用例中的预设输出结果进行对比,得到对嵌入式系统进行测试的测试结果。这样,可自动化完成对嵌入式系统的测试,避免了人为控制测试过程,提升了嵌入式系统测试效率。
在一个实施例中,步骤S202,也就是获取预先编排好的多于一组的测试用例的步骤之前,嵌入式系统测试方法还包括:获取多于一组的测试用例;根据多于一组的测试用例各自对应的类别、优先级和历史测试结果,对多于一组的测试用例进行编排,得到编排好的多于一组的测试用例。
具体地,为满足业务上测试用例的执行顺序或者并发执行的需求,测试设备可获取多于一组的测试用例,进而测试设备可根据多于一组的测试用例各自对应的类别、优先级和历史测试结果,对多于一组的测试用例进行编排,得到编排好的多于一组的测试用例。进而依次从编排好的多于一组的测试用例中,选择当前使用的测试用例,并依次测试单个业务点的功能是否能正常实现。
在一个实施例中,测试用例的优先级具体可以分为P0、P1、P2和P3,其中,P0为核心功能测试用例,确定此版本是否可测的测试用例,此部分测试用例如果执行失败将会阻碍大部分其他测试用例的验证。P1为高优先级测试用例,最常执行以保证功能性是稳定的,基本功能测试、重要错误和边界测试。P2为中优先级测试用例,更全面地验证功能的各个方面,异常测试、边界、中断、容错和UI(User Interface),用户界面)等测试用例。P3为低优先级测试用例,不常被执行,性能、压力、兼容性、稳定性、安全性和可用性等。
上述实施例中,通过将多于一组的测试用例进行编排,使得测试用例可依次按照编排顺序和规则进行执行,实现自动化测试,提高嵌入式系统的测试效率。
在一个实施例中,预设协议为安全外壳协议,步骤S206,也就是根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将目标测试用例中的目标测试数据发送至嵌入式系统的步骤,具体包括:获取与待测试的嵌入式系统对应的原始指令;根据待测试的嵌入式系统中的指令格式,将原始指令进行变换,得到预设指令;根据与待测试的嵌入式系统对应的安全外壳协议和预设指令,将目标测试用例中的目标测试数据发送至嵌入式系统。
具体地,测试设备可将与嵌入式系统格式不同的指令进行变换,以使得测试设备可正常与嵌入式系统进行通信,进而可对嵌入式系统进行测试。测试设备可获取与待测试的嵌入式系统对应的原始指令,原始指令是一种与嵌入式系统指令格式不同的计算机指令。测试设备可根据待测试的嵌入式系统中的指令格式,将原始指令进行变换,得到预设指令。进而测试设备可根据与待测试的嵌入式系统对应的安全外壳协议和预设指令,将目标测试用例中的目标测试数据发送至嵌入式系统。
上述实施例中,通过将与待测试的嵌入式系统对应的原始指令进行变换,使得测试设备可与嵌入式系统进行通信,实现远程对嵌入式系统的自动化测试。
在一个实施例中,对嵌入式系统进行测试的测试结果包括测试通过和测试失败,步骤S210,也就是根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统进行测试的测试结果的步骤,具体包括:将各测试用例分别对应的测试输出结果和预设输出结果进行比对校验;当测试输出结果和预设输出结果一致时,确定对嵌入式系统进行测试的测试结果为测试通过;当测试输出结果和预设输出结果不一致时,确定对嵌入式系统进行测试的测试结果为测试失败。
具体地,多于一组各测试用例各自对应有测试输出结果和预设输出结果,测试设备可将各测试用例分别对应的测试输出结果和预设输出结果进行比对校验。测试输出结果和预设输出结果可一致,也可不一致。当测试输出结果和预设输出结果一致时,测试设备可确定对嵌入式系统进行测试的测试结果为测试通过。当测试输出结果和预设输出结果不一致时,测试设备可确定对嵌入式系统进行测试的测试结果为测试失败。
上述实施例中,通过将测试输出结果和预设输出结果进行比对校验,可快速确定对嵌入式系统进行测试的测试结果,进一步提升嵌入式系统测试效率。
在一个实施例中,步骤S210,也就是根据各测试用例分别对应的测试输出结果和预设输出结果,确定对嵌入式系统进行测试的测试结果的步骤之后,嵌入式系统测试方法还包括:获取各测试用例各自对应的测试日志和测试用例标识;根据各测试用例的测试用例标识,将各测试用例分别对应的测试日志和测试结果进行关联,得到关联列表;根据关联列表生成测试结果展示页面,并将测试结果展示页面进行展示。
其中,测试日志是测试用例在执行的过程中产生的日志。测试日志是测试过程监控、测试结果和软件质量评估的基础,同时也是数据分析和过程改进的重要依据。测试日志有以下几个重要作用:记录测试过程所发生的事件。描述被测系统或组件的测试结果。作为测试报告的依据。测试日志的内容随测试级别和策略的不同而改变。
具体地,各测试用例在执行的过程中会产生测试日志,且各测试用例分别对应有各自的测试用例标识。测试设备可获取各测试用例各自对应的测试日志和测试用例标识。进而测试设备可根据各测试用例的测试用例标识,将各测试用例分别对应的测试日志和测试结果进行关联,得到关联列表。以使得测试设备课根据关联列表生成测试结果展示页面,并将测试结果展示页面进行展示。
上述实施例中,将测试结果与对应的测试日志进行关联并展示,通过可视化的方式,使得嵌入式系统的测试结果能够直观展示出来。
在一个实施例中,嵌入式系统测试方法还包括:确定数据推送接口;根据数据推送接口,通过通讯工具将测试结果展示页面推送给用户;通讯工具包括及时通讯工具和非及时通讯工具。
具体地,测试设备中部署有数据推送接口,用于推送数据。测试设备可确定数据接收对象的地址,测试设备可确定数据推送接口,进而测试设备可根据该数据推送接口和接收对象的地址,通过通讯工具将测试结果展示页面推送给用户。
在一个实施例中,测试结果展示页面推送的用户可以是相关技术人员。测试设备可通过相关的通讯工具向相关技术人员推送测试结果展示页面。通讯工具可以是及时通讯工具和非及时通讯工具,比如邮件、微信、QQ和钉钉等。本实施例在此对通讯工具不做限定。
上述实施例中,通过通讯工具,将嵌入式系统的测试结果推送给相关的技术人员,便于技术人员实时了解嵌入式系统的测试状态和进度,及时发现并处理问题,加快整个嵌入式系统的测试进程。
应该理解的是,虽然图2的各个步骤按照顺序依次显示,但是这些步骤并不是必然按照顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述图2中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种嵌入式系统测试装置400,包括:获取模块401、确定模块402、发送模块403和接收模块404,其中:
获取模块401,用于获取预先编排好的多于一组的测试用例。
确定模块402,用于根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果。
发送模块403,用于根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果。
接收模块404,用于接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果。
确定模块402还用于根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
在一个实施例中,获取模块401还用于获取多于一组的测试用例。
在一个实施例中,获取模块401还用于获取各测试用例各自对应的测试日志和测试用例标识。
在一个实施例中,发送模块403还用于获取与待测试的嵌入式系统对应的原始指令;根据待测试的嵌入式系统中的指令格式,将原始指令进行变换,得到预设指令;根据与待测试的嵌入式系统对应的安全外壳协议和预设指令,将目标测试用例中的目标测试数据发送至嵌入式系统。
在一个实施例中,确定模块402还用于将各测试用例分别对应的测试输出结果和预设输出结果进行比对校验;当测试输出结果和预设输出结果一致时,确定对嵌入式系统进行测试的测试结果为测试通过;当测试输出结果和预设输出结果不一致时,确定对嵌入式系统进行测试的测试结果为测试失败。
在一个实施例中,确定模块402还用于确定数据推送接口。
参考图5,在一个实施例中,嵌入式系统测试装置400还包括:编排模块405、关联模块406、展示模块407和推送模块408,其中:
编排模块405,用于根据多于一组的测试用例各自对应的类别、优先级和历史测试结果,对多于一组的测试用例进行编排,得到编排好的多于一组的测试用例。
关联模块406,用于根据各测试用例的测试用例标识,将各测试用例分别对应的测试日志和测试结果进行关联,得到关联列表。
展示模块407,用于根据关联列表生成测试结果展示页面,并将测试结果展示页面进行展示。
推送模块408,用于根据数据推送接口,通过通讯工具将测试结果展示页面推送给用户;通讯工具包括及时通讯工具和非及时通讯工具。
上述嵌入式系统测试装置,根据预设业务需求,控制预先编排好的多于一组的测试用例依次自动执行。将确定当前执行的目标测试用例中的目标测试数据发送至待测试的嵌入式系统,嵌入式系统根据目标测试数据进行相应的数据处理,得到测试输出结果。将各测试用例的测试输出结果和目标测试用例中的预设输出结果进行对比,得到对嵌入式系统进行测试的测试结果。这样,可自动化完成对嵌入式系统的测试,避免了人为控制测试过程,提升了嵌入式系统测试效率。
关于嵌入式系统测试装置的具体限定可以参见上文中对于嵌入式系统测试方法的限定,在此不再赘述。上述嵌入式系统测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是上述图1中的测试设备102,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种嵌入式系统测试方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述嵌入式系统测试方法的步骤。此处嵌入式系统测试方法的步骤可以是上述各个实施例的嵌入式系统测试方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述嵌入式系统测试方法的步骤。此处嵌入式系统测试方法的步骤可以是上述各个实施例的嵌入式系统测试方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种嵌入式系统测试方法,包括:
获取多于一组的测试用例;
根据多于一组的所述测试用例各自对应的类别、优先级和历史测试结果,对多于一组的所述测试用例进行编排,得到编排好的多于一组的测试用例;
根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
获取与待测试的嵌入式系统对应的原始指令;
根据待测试的嵌入式系统中的指令格式,将所述原始指令进行变换,得到预设指令,所述预设指令用于指示测试设备进行相应的操作;
根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述预设协议为安全外壳协议,所述根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统,包括:
根据与待测试的嵌入式系统对应的所述安全外壳协议和所述预设指令,将所述目标测试用例中的目标测试数据发送至所述嵌入式系统。
3.根据权利要求1所述的方法,其特征在于,所述对嵌入式系统进行测试的测试结果包括测试通过和测试失败,所述根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果,包括:
将各所述测试用例分别对应的所述测试输出结果和所述预设输出结果进行比对校验;
当所述测试输出结果和所述预设输出结果一致时,确定对所述嵌入式系统进行测试的测试结果为测试通过;
当所述测试输出结果和所述预设输出结果不一致时,确定对所述嵌入式系统进行测试的测试结果为测试失败。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果之后,所述方法还包括:
获取各所述测试用例各自对应的测试日志和测试用例标识;
根据各所述测试用例的测试用例标识,将各所述测试用例分别对应的测试日志和测试结果进行关联,得到关联列表;
根据所述关联列表生成测试结果展示页面,并将所述测试结果展示页面进行展示。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
确定数据推送接口;
根据所述数据推送接口,通过通讯工具将所述测试结果展示页面推送给用户;所述通讯工具包括及时通讯工具和非及时通讯工具。
6.一种嵌入式系统测试装置,其特征在于,所述装置包括:
获取模块,用于获取多于一组的测试用例;
编排模块,用于根据多于一组的所述测试用例各自对应的类别、优先级和历史测试结果,对多于一组的所述测试用例进行编排,得到编排好的多于一组的测试用例;
确定模块,用于根据预设业务需求,依次从所述测试用例中,确定当前待使用的目标测试用例;所述目标测试用例包括目标测试数据和预设输出结果;
发送模块,用于获取与待测试的嵌入式系统对应的原始指令;根据待测试的嵌入式系统中的指令格式,将所述原始指令进行变换,得到预设指令,所述预设指令用于指示测试设备进行相应的操作;根据与待测试的嵌入式系统对应的预设协议和预设指令,依次将所述目标测试用例中的目标测试数据发送至所述嵌入式系统;发送的所述目标测试数据用于指示所述嵌入式系统基于目标测试数据进行数据处理,得到测试输出结果;
接收模块,用于接收所述嵌入式系统反馈的、且与各所述测试用例对应的测试输出结果;
确定模块还用于根据各所述测试用例分别对应的所述测试输出结果和所述预设输出结果,确定对所述嵌入式系统进行测试的测试结果。
7.根据权利要求6所述的装置,其特征在于,所述预设协议为安全外壳协议,所述发送模块还用根据与待测试的嵌入式系统对应的所述安全外壳协议和所述预设指令,将所述目标测试用例中的目标测试数据发送至所述嵌入式系统。
8.根据权利要求6所述的装置,其特征在于,所述对嵌入式系统进行测试的测试结果包括测试通过和测试失败,所述确定模块还用于将各所述测试用例分别对应的所述测试输出结果和所述预设输出结果进行比对校验;当所述测试输出结果和所述预设输出结果一致时,确定对所述嵌入式系统进行测试的测试结果为测试通过;当所述测试输出结果和所述预设输出结果不一致时,确定对所述嵌入式系统进行测试的测试结果为测试失败。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN201911335402.6A 2019-12-23 2019-12-23 嵌入式系统测试方法、装置、计算机设备和存储介质 Active CN113094251B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911335402.6A CN113094251B (zh) 2019-12-23 2019-12-23 嵌入式系统测试方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911335402.6A CN113094251B (zh) 2019-12-23 2019-12-23 嵌入式系统测试方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN113094251A CN113094251A (zh) 2021-07-09
CN113094251B true CN113094251B (zh) 2024-02-23

Family

ID=76663017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911335402.6A Active CN113094251B (zh) 2019-12-23 2019-12-23 嵌入式系统测试方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN113094251B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113938412A (zh) * 2021-10-20 2022-01-14 上海商泰汽车信息系统有限公司 协议栈测试方法及装置、测试系统、计算机可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793326A (zh) * 2014-01-28 2014-05-14 福建星网锐捷网络有限公司 组件测试方法及装置
CN107329861A (zh) * 2017-06-12 2017-11-07 北京奇安信科技有限公司 一种多接口测试方法及装置
CN107328592A (zh) * 2017-06-26 2017-11-07 珠海格力电器股份有限公司 空调测试方法、装置、系统及处理器、存储介质
WO2018014580A1 (zh) * 2016-07-20 2018-01-25 平安科技(深圳)有限公司 数据接口测试方法、装置、服务器和存储介质
CN107861873A (zh) * 2017-11-03 2018-03-30 西安理工大学 基于两属性分级调整的测试用例优先级调整方法
CN108459953A (zh) * 2017-02-22 2018-08-28 北京京东尚科信息技术有限公司 测试方法和装置
CN109933521A (zh) * 2019-01-23 2019-06-25 平安科技(深圳)有限公司 基于bdd的自动化测试方法、装置、计算机设备及存储介质
CN110018935A (zh) * 2019-04-10 2019-07-16 苏州浪潮智能科技有限公司 存储设备测试方法、系统、装置及计算机可读存储介质
CN110109820A (zh) * 2019-03-19 2019-08-09 深圳壹账通智能科技有限公司 回归测试用例确定方法、装置、计算机设备及存储介质
CN110399293A (zh) * 2019-06-21 2019-11-01 平安科技(深圳)有限公司 系统测试方法、装置、计算机设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9329863B2 (en) * 2012-03-13 2016-05-03 International Business Machines Corporation Load register on condition with zero or immediate instruction

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103793326A (zh) * 2014-01-28 2014-05-14 福建星网锐捷网络有限公司 组件测试方法及装置
WO2018014580A1 (zh) * 2016-07-20 2018-01-25 平安科技(深圳)有限公司 数据接口测试方法、装置、服务器和存储介质
CN108459953A (zh) * 2017-02-22 2018-08-28 北京京东尚科信息技术有限公司 测试方法和装置
CN107329861A (zh) * 2017-06-12 2017-11-07 北京奇安信科技有限公司 一种多接口测试方法及装置
CN107328592A (zh) * 2017-06-26 2017-11-07 珠海格力电器股份有限公司 空调测试方法、装置、系统及处理器、存储介质
CN107861873A (zh) * 2017-11-03 2018-03-30 西安理工大学 基于两属性分级调整的测试用例优先级调整方法
CN109933521A (zh) * 2019-01-23 2019-06-25 平安科技(深圳)有限公司 基于bdd的自动化测试方法、装置、计算机设备及存储介质
CN110109820A (zh) * 2019-03-19 2019-08-09 深圳壹账通智能科技有限公司 回归测试用例确定方法、装置、计算机设备及存储介质
CN110018935A (zh) * 2019-04-10 2019-07-16 苏州浪潮智能科技有限公司 存储设备测试方法、系统、装置及计算机可读存储介质
CN110399293A (zh) * 2019-06-21 2019-11-01 平安科技(深圳)有限公司 系统测试方法、装置、计算机设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Extending Operation Lifespan of Instrumentation and Control Systems with Virtualization Technologies;Kirill Semenkov等;《2019 International Russian Automation Conference (RusAutoCon)》;1-5 *
基于分布式架构的嵌入式软件自动化测试平台研究与实现;陈佐;《中国优秀硕士学位论文全文数据库 信息科技辑》;I138-1420 *

Also Published As

Publication number Publication date
CN113094251A (zh) 2021-07-09

Similar Documents

Publication Publication Date Title
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
CN111651366B (zh) Sdk测试方法、装置、设备及存储介质
US20160170867A1 (en) Exposing method related data calls during testing in an event driven, multichannel architecture
CN111124919A (zh) 一种用户界面的测试方法、装置、设备及存储介质
KR100985749B1 (ko) 내장형 시스템 소프트웨어 자동 테스트 시스템 및 방법과테스트 시나리오 작성 방법
US11086765B2 (en) Test reuse exchange and automation system and method
US10459830B2 (en) Executable code abnormality detection
CN112799782B (zh) 模型生成系统、方法、电子设备及存储介质
KR20190019009A (ko) 게임 테스트 자동화 장치 및 방법
CN110888804B (zh) 接口测试方法以及接口测试平台
CN113094251B (zh) 嵌入式系统测试方法、装置、计算机设备和存储介质
CN113238930A (zh) 软件系统的测试方法、装置、终端设备和存储介质
KR101252358B1 (ko) Plc 명령어 테스트 장치 및 방법
CN111767218B (zh) 一种用于持续集成的自动化测试方法、设备及存储介质
CN113590498B (zh) 一种桌面操作系统应用启动时间的测试方法及系统
CN115599683A (zh) 自动化测试方法、装置、设备及存储介质
CN112131127B (zh) 接口测试方法、装置、系统及电子设备
CN114356769A (zh) 软件的学习方法、装置、设备及存储介质
CN116932414B (zh) 界面测试用例的生成方法、设备及计算机可读存储介质
KR102419119B1 (ko) 인터페이스 제어 문서에 따라 그래픽 유저 인터페이스를 생성하는 시험 장치 및 이의 동작 방법
CN116225966B (zh) 一种基于智能手表的应用评估方法及系统
US20190251020A1 (en) System and method for automated software quality assurance testing and visual reporting
CN116820919A (zh) 软件缺陷管理方法、装置、设备、存储介质和程序产品
CN115840703A (zh) 一种服务器平台固件弹性测试方法、装置、电子设备和存储介质
CN114116468A (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
GR01 Patent grant
GR01 Patent grant