CN115002014B - 确定测试结果的方法、装置、存储介质及电子装置 - Google Patents
确定测试结果的方法、装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN115002014B CN115002014B CN202210530928.5A CN202210530928A CN115002014B CN 115002014 B CN115002014 B CN 115002014B CN 202210530928 A CN202210530928 A CN 202210530928A CN 115002014 B CN115002014 B CN 115002014B
- Authority
- CN
- China
- Prior art keywords
- target
- frame data
- response
- instruction
- tested
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 136
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000004044 response Effects 0.000 claims abstract description 127
- 230000006870 function Effects 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000005406 washing Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000010411 cooking Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/065—Generation of reports related to network devices
-
- 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
技术领域
本申请涉及智能家居/智慧家庭技术领域,具体而言,涉及一种确定测试结果的方法、装置、存储介质及电子装置。
背景技术
在智能家居领域中,对于新开发的模块,需要进行功能验证测试,现有技术中的测试都是通过真实设备进行测试工作,但是通过真实设备进行验证测试时受到底板资源的限制,有测试冗余、迭代慢的缺点,相关技术提出通过虚拟底板设备来测试模块的新功能,但是在测试过程中由于不能根据应答指令获取模块的属性值,从而不能迅速确定测试结果。
针对上述相关技术中无法根据应答指令迅速确定测试结果的问题,尚未提出解决方案。
发明内容
本发明实施例提供了一种确定测试结果的方法、装置、存储介质及电子装置,以至少解决相关技术中通过真实设备上报设备属性受限于底板资源和测试冗余,且迭代慢的问题。
根据本发明的一个实施例,提供一种确定测试结果的方法,包括:
向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;在脚本库中获取与所述应答指令相匹配的目标帧数据;根据所述目标帧数据确定所述待测模块的测试结果。
在一个示例性实施例中,所述在脚本库中获取与所述应答指令相匹配的目标帧数据,包括:根据所述应答指令中的数据标识确定所述测试指令的目标发送方;在所述脚本库中获取与所述目标发送方对应的所述目标帧数据,其中,所述脚本库中记录了多个发送方,以及与每个发送方对应的帧数据。
在一个示例性实施例中,所述在所述脚本库中获取与所述目标发送方对应的所述目标帧数据,包括:获取所述应答指令中的字节码数据中的前M至N个字节,其中,N、M是大于或等于1的整数,M小于N;使用所述字节码数据中的所述前M至N个字节与所述目标发送方的所述目标帧数据的帧关键字进行匹配;在匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在一个示例性实施例中,所述方法还包括:在所述目标帧数据的帧关键字匹配不成功的情况下,使用所述字节码数据中的前K个字节与所述目标发送方的所述目标帧数据的帧类型进行匹配,其中,K是大于或等于1的整数;在所述目标帧数据的帧类型匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在一个示例性实施例中,所述根据所述应答指令中的数据标识确定所述测试指令的目标发送方,包括:根据所述应答指令中的所述数据标识的取值,确定所述测试指令的目标发送方,其中,当所述数据标识的取值为1时所述目标发送方为第一目标发送方,所述数据标识的取值为2时所述目标发送方为第二目标发送方。
在一个示例性实施例中,所述根据所述目标帧数据确定所述待测模块的测试结果,包括:在所述目标帧数据的起始字节位大于0的情况下,对所述目标帧数据进行解析,得到所述目标帧数据的解析结果;在所述目标发送方为第二目标发送方的情况下,将所述目标帧数据的解析结果确定为所述待测模块的测试结果。
在一个示例性实施例中,所述方法还包括:在所述目标发送方为第一目标发送方的情况下,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;将所述目标帧数据的解析结果和所述应答帧字节码确定为所述待测模块的测试结果。
在一个示例性实施例中,所述方法还包括:在所述目标帧数据的起始字节位小于或等于0的情况下,若所述目标发送方为第一目标发送方,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;将所述应答帧字节码确定为所述待测模块的测试结果。
在一个示例性实施例中,所述对所述目标帧数据进行解析,得到所述目标帧数据的解析结果,包括:根据所述目标帧数据的起始字节位,在所述脚本库中获取所述目标帧数据的数据区字节码;对所述目标帧数据的数据区字节码进行解析,得到所述目标帧数据的解析结果。
根据本发明的另一个实施例,还提供了一种确定测试结果的装置,包括:发送单元,用于向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;接收单元,用于接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;获取单元,用于获取在脚本库中获取与所述应答指令相匹配的目标帧数据;确定单元,用于根据所述目标帧数据确定所述待测模块的测试结果。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;在脚本库中获取与所述应答指令相匹配的目标帧数据;根据所述目标帧数据确定所述待测模块的测试结果。通过应答指令和脚本库中的帧数据匹配,解析帧数据作为测试结果,解决了相关技术中无法根据应答指令迅速确定测试结果的问题,进而达到了提高确定测试结果的效率。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的一种确定测试结果方法的硬件环境示意图;
图2是根据本发明实施例的确定测试结果的方法的流程图;
图3是根据本发明实施例的模拟底板测试平台示意图;
图4是根据本发明实施例的测试指令来源一的示意图;
图5是根据本发明实施例的测试指令来源二的示意图;
图6是根据本发明实施例的多个指令的数据区字节码的解析流程图;
图7是根据本发明实施例的单指令的数据区字节码的解析流程图;
图8是根据本发明实施例的解析应答信息确定测试结果的流程图;
图9是根据本发明实施例的帧模板实例化的流程图;
图10是根据本发明实施例的确定测试结果的装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本申请实施例的一个方面,提供了一种确定测试结果的交互方法。该确定测试结果方法广泛应用于智慧家庭(Smart Home)、智能家居、智能家用设备生态、智慧住宅(Intelligence House)生态等全屋智能数字化控制应用场景。可选地,在本实施例中,上述智能家居设备的交互方法可以应用于如图1所示的由终端设备102和服务器104所构成的硬件环境中。图1是根据本申请实施例的一种确定测试结果方法的硬件环境示意图,如图1所示,服务器104通过网络与终端设备102进行连接,可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器104提供数据存储服务,可在服务器上或独立于服务器配置云计算和/或边缘计算服务,用于为服务器104提供数据运算服务。
上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:WIFI(Wireless Fidelity,无线保真),蓝牙。终端设备102可以并不限定于为PC、手机、平板电脑、智能空调、智能烟机、智能冰箱、智能烤箱、智能炉灶、智能洗衣机、智能热水器、智能洗涤设备、智能洗碗机、智能投影设备、智能电视、智能晾衣架、智能窗帘、智能影音、智能插座、智能音响、智能音箱、智能新风设备、智能厨卫设备、智能卫浴设备、智能扫地机器人、智能擦窗机器人、智能拖地机器人、智能空气净化设备、智能蒸箱、智能微波炉、智能厨宝、智能净化器、智能饮水机、智能门锁等。
在本实施例中提供了一种确定测试结果的方法,图2是根据本发明实施例的确定测试结果的方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;
步骤S204,接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;
步骤S206,在脚本库中获取与所述应答指令相匹配的目标帧数据;
步骤S208,根据所述目标帧数据确定所述待测模块的测试结果。
在上述实施例中,待测模块为新开发的模块,例如云芯片或二代芯片。需要对其功能进行检测或验证,在验证或测试模块的功能时,通过虚拟设备底板向待测模块发送测试指令,待测模块执行测试指令后向虚拟设备底板发送应答指令,虚拟底板通过分析应答指令确定对待测模块的测试结果。
可选的,上述方法应用于模拟底板测试平台上,图3是根据本发明实施例的模拟底板测试平台示意图,如图3所示,在PC机上模拟底板,使用虚拟底板web代理,将待测模块配置到需要的信道,设备网关向消息平台KAFKA上报设备的设备属性信息,将设备属性信息推送给脚本执行引擎。在应用层请求放在数据库中的脚本,规则引擎从KAFKA平台获取底板数据(包括底板执行消息和大循环执行消息),就可以实时获取到需要的模拟设备属性。
在一个示例性实施例中,所述在脚本库中获取与所述应答指令相匹配的目标帧数据,包括:根据所述应答指令中的数据标识确定所述测试指令的目标发送方;在所述脚本库中获取与所述目标发送方对应的所述目标帧数据,其中,所述脚本库中记录了多个发送方,以及与每个发送方对应的帧数据。
在本实施例中,测试指令的目标发送方表示测试指令的来源,通过虚拟设备底板向待测模块发送的测试指令有两种来源。
图4是根据本发明实施例的测试指令来源一的示意图,如图所示,调用执行大循环脚本,通过IOT的测试指令下发给待测模块,待测模块执行并应答,发送应答指令到虚拟底板web代理,显示应答指令,kafka的websock透传应答指令给虚拟底板应用,虚拟底板应用中的脚本处理组件解析应答指令,然后会返回原始测试指令和解析的json字符串以及原始应答指令和最新状态给IOT。
图5是根据本发明实施例的测试指令来源二的示意图,如图所示,Kafka推送给虚拟底板应用底板测试指令,然后虚拟底板应用底板将测试指令发送到虚拟底板web代理,通过虚拟底板web代理发送给待测模块,待测模块执行并应答,发送应答指令到虚拟底板web代理,然后websock透传应答指令给虚拟底板应用,虚拟底板应用中的脚本处理组件解析应答指令,然后返回原始测试指令和解析的json字符串和最新状态给kafka。
根据应答指令中的数据标识判断测试指令的来源,如果测试指令指令来源为调用执行大循环脚本,通过IOT平台的测试指令下发给待测模块,即目标发送方为IOT平台,则获取脚本库中记录的IOT平台对应的帧数据;如果测试指令指令来源为Kafka推送给虚拟底板应用底板测试指令,即目标发送方为Kafka,则获取脚本库中记录的Kafka对应的帧数据。
在一个示例性实施例中,所述在所述脚本库中获取与所述目标发送方对应的所述目标帧数据,包括:获取所述应答指令中的字节码数据中的前M至N个字节,其中,N、M是大于或等于1的整数,M小于N;使用所述字节码数据中的所述前M至N个字节与所述目标发送方的所述目标帧数据的帧关键字进行匹配;在匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在本实施例中,在确定看测试指令的发送方之后,在与发送方对应的众多帧数据中找到与应答指令匹配的目标帧数据。首先通过匹配帧关键字进行帧数据匹配,取应答指令的字节码数据中的前M至N个字节(例如前10~12个字节内容)作为应答指令的关键字,与目标发送方中的帧数据的帧关键字进行匹配,在匹配成功的情况下,将匹配的帧关键字对应的帧数据作为目标帧数据。
需要说明的是,上述目标帧数据包括但不限于以下信息:帧数据起始字节位、数据标识、应答帧指令模板、应答帧数据区起始字节位。
在一个示例性实施例中,所述方法还包括:在所述目标帧数据的帧关键字匹配不成功的情况下,使用所述字节码数据中的前K个字节与所述目标发送方的所述目标帧数据的帧类型进行匹配,其中,K是大于或等于1的整数;在所述目标帧数据的帧类型匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在本实施例中,在上述帧关键字匹配过程中,匹配不成功的情况下,即在目标发送方中的帧数据的帧关键字中没找到与应答指令的关键字匹配的情况下,通过匹配帧类型进行帧数据匹配,取应答指令的字节码数据中的前K个字节(例如前10个字节内容)的帧类型作为应答指令的帧类型,与目标发送方中的帧数据的帧类型进行匹配,在匹配成功的情况下,将匹配的帧类型对应的帧数据作为目标帧数据。
在一个示例性实施例中,所述根据所述应答指令中的数据标识确定所述测试指令的目标发送方,包括:根据所述应答指令中的所述数据标识的取值,确定所述测试指令的目标发送方,其中,当所述数据标识的取值为1时所述目标发送方为第一目标发送方,所述数据标识的取值为2时所述目标发送方为第二目标发送方。
在本实施例中,在数据标识为1的情况下,目标发送方为IOT平台(第一目标发送方),在数据标识为2的时候,目标发送方为kafka(第二目标发送方)。
在一个示例性实施例中,所述根据所述目标帧数据确定所述待测模块的测试结果,包括:在所述目标帧数据的起始字节位大于0的情况下,对所述目标帧数据进行解析,得到所述目标帧数据的解析结果;在所述目标发送方为第二目标发送方的情况下,将所述目标帧数据的解析结果确定为所述待测模块的测试结果。
在本实施例中,首先根据目标帧数据的起始字节位确定是否对获取的目标帧数据进行解析,在目标帧数据的起始字节位大于0的情况下,对目标帧数据解析,得到解析结果,其中解析结果表示待测模块中的属性数据。
在一个示例性实施例中,所述方法还包括:在所述目标发送方为第一目标发送方的情况下,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;将所述目标帧数据的解析结果和所述应答帧字节码确定为所述待测模块的测试结果。
在本实施例中,在目标发送方为IOT平台且目标帧数据的起始字节位大于0的情况下,除处理解析目标帧数据之外,还要根据目标帧中的应答帧模板和输入参数,生成应答帧字节码,生成应答字节码是为了将目标帧的应答帧模板实例化,将解析目标帧数据得到的解析结果和生成的应答帧字节码一起作为测试结果输出。
在一个示例性实施例中,所述方法还包括:在所述目标帧数据的起始字节位小于或等于0的情况下,若所述目标发送方为第一目标发送方,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;将所述应答帧字节码确定为所述待测模块的测试结果。
在本实施例中,在目标发送方为IOT平台且目标帧数据的起始字节位小于或等于0的情况下,不解析目标帧数据,只需要根据目标帧中的应答帧模板和输入参数,生成应答帧字节码,将目标帧的应答帧模板实例化。
在一个示例性实施例中,所述对所述目标帧数据进行解析,得到所述目标帧数据的解析结果,包括:根据所述目标帧数据的起始字节位,在所述脚本库中获取所述目标帧数据的数据区字节码;对所述目标帧数据的数据区字节码进行解析,得到所述目标帧数据的解析结果。
在本实施例中,对目标帧数据进行解析,是对目标帧数据中的数据区的字节码进行解析,图6是根据本发明实施例的多个指令的数据区字节码的解析流程图,如图6所示,包括以下步骤:
步骤602,读取数据区前两个字节,获取子命令;
步骤604,子命令与operatiom的eppcmd进行比对,找到对应组命令,循环执行步骤606至步骤614,直至找到组命令下每个属性的名称和值;
步骤606,从property中找到组命令对应下每个属性的caeType和自身的vartiants信息;
步骤608,根据caeType的值走分支流程,在caeType=1或6时,执行步骤610,在caeType=3、4、5或7时,执行步骤612,在caeType=2时,执行步骤614;
步骤610,按start、starbit和length从字节码中获取对应属性的值;
步骤612,按start、starbit和length获取日期和事件的字节码,按照年、月、日、时、分、秒所占字节计算对应属性的值;
步骤614,按start、starbit和length从字节码中获取值,然后与属性variants中eppvalue比对,找到stdvalue做为属性值;
步骤616,得到组命令名称、组命令下每个属性的名称和值;
步骤618,更新虚拟设备的组命令中涉及的各属性值。
图7是根据本发明实施例的单指令的数据区字节码的解析流程图,如图7所示,包括以下步骤:
步骤702,读取数据区前两个字节,获取子命令;
步骤704,子命令与operatiom的eppcmd进行比对,找到对应属性;
步骤706,从property中找到对应的属性的caeType和自身的vartiants信息;
步骤708,根据caeType的值走分支流程,在caeType=1或6时,执行步骤710,在caeType=3、4、5或7时,执行步骤712,在caeType=2时,执行步骤714;
步骤710,按start、starbit和length从字节码中获取对应属性的值;
步骤712,按start、starbit和length获取日期和事件的字节码,按照年、月、日、时、分、秒所占字节计算对应属性的值;
步骤714,按start、starbit和length从字节码中获取值,然后与属性variants中eppvalue比对,找到stdvalue做为属性值;
步骤716,得到单命令的属性名称和属性值;
步骤718,更新虚拟设备的单命令中涉及的各属性值。
下面结合实施例对本发明进行具体说明:
图8是根据本发明实施例的解析应答信息确定测试结果的流程图,如图所示,包括以下步骤:
步骤801,输入应答信息;
步骤802,判断应答信息中的数据标识,在数据标识的值为1的情况下,执行步骤803,在数据标识的值为2的情况下,执行步骤810;
步骤803,取应答信息字节码的10~12字节内容,与脚本库中第一目标发送方记录的帧关键字匹配;
步骤804,判断步骤803匹配是否成功,在匹配成功的情况下,执行步骤806,在匹配不成功的情况下,执行步骤805;
步骤805,取应答信息字节码的10字节内容,与第一目标发送方记录的帧类型匹配;
步骤806,匹配到记录,从脚本库中获取目标帧数据;其中目标帧数据包括但不限于以下信息:帧数据起始字节位、数据标识、应答帧指令模板、应答帧数据区起始字节位;
步骤807,判断目标帧数据的起始字节位的值是否大于0,在判断结果为是的情况下,执行步骤808,在判断结果为否的情况下,执行步骤809;
步骤808,根据帧数据起始字节为,获取数据区字节码并解析;
步骤809,根据应答帧模板和输入参数,生成应答帧字节码
步骤810,取应答信息字节码的10~12字节内容,与脚本库中第二目标发送方记录的帧关键字匹配;
步骤811,判断步骤810匹配是否成功,在匹配成功的情况下,执行步骤813,在匹配不成功的情况下,执行步骤812;
步骤812,取应答信息字节码的10字节内容,与第二目标发送方记录的帧类型匹配;
步骤813,匹配到记录,从脚本库中获取目标帧数据;
步骤814,判断目标帧数据的起始字节位的值是否大于0,在判断结果为是的情况下,执行步骤815,在判断结果为否的情况下,执行步骤816;
步骤815,根据帧数据起始字节为,获取数据区字节码并解析;
步骤816,输出测试结果。
图9是根据本发明实施例的帧模板实例化的流程图,如图所示,包括以下步骤:
步骤902,输入应答帧模板和输入参数;
步骤904,处理ADDR标识;
步骤906,处理非通用标识;
步骤908,处理check标识;
步骤910,处理crc标识;
步骤912,输出实例化E++字节码,即应答帧字节码。
其中,ADDR标识的地址标识结构如下表:
ADDR标识的赋值说明如下表:
其中,非通用标识BOARD_BASEINFO的字节码格式说明如下:设备协议版本(8byte)+设备软件版本(8byte)+串口加密方法(1byte)+保留(2byte)+设备硬件版本(8byte)+模块与设备之间的通讯方式(1byte)+Softap配置模式时的设备名称(8byte)+设备功能信息(2byte)+直连子机地址(1byte)。
设备协议版本:用ASCII码表示,区分大小写,不够8字节以0x00右侧填充。例:“E++2.19”。
设备软件版本:默认为年月日共8个字节,用ASCII码表示,区分大小写。例:“20191218”。
串口加密方式:0xF1家电不支持加密,默认0x00。
设备硬件版本:默认为年月日共8个字节,用ASCII码表示,区分大小写。例:“20191218”。
模块与设备之间的通讯方式:0x00:交互模式,即通信模块能向网络家电设备发命令,网络家电设备也能向通信模块发命令,适用于网络家电设备资源充足且对交互时效性要求较高的家电。0x01:主从模式,即通信模块主动发命令,网络家电设备只应答,适用于网络家电设备资源受限的家电。
Softap配置模式时的设备名称:即热点字符,如U-AC,不够8字节以0x00右侧填充。
设备功能信息如下表:
设备角色:分为普通设备、网关设备、附件设备。
DeviceKey:海极网创建产品时生成。设备连接云平台时,需要对设备识别码和DeviceKey进行校验,校验失败,平台会拒绝设备连接(详见13、14命令)。
MESH终端:表示本设备可以BLE MESH组网。
直连子机地址:与模块直接相连的子机的地址。不支持多子机,直连子机地址默认为0x01。
非通用标识BOARD_TYPEID包括标识TypeId(32bytes)+设备角色(1byte);产品功能标识:TYPEID,由海极网自动生成。非通用标识如下表:
位置 | 7位(高位)至3位 | 第2位 | 第1位 | 第0位 |
内容 | 预留,默认为0 | 1表示是附件设备 | 1表示是网关设备 | 1表示是普通设备 |
非通用标识BOARD_DEVICEKEY包括算法(1byte)+密文(16或32bytes):密文:将模块发送的随机数与DeviceKey(32bytes的ASCII码)拼接(随机数在前,DeviceKey在后)进行加密运算,将密文返回给模块。
上述算法如下表:
算法 | 值 | 备注 |
MD5 | 0x01 | 密文长度为16bytes |
SHA256 | 0x02 | 密文长度为32bytes |
非通用标识BOARD_MODEL包括成品编码(14byte)+成品编码短标识(4byte)。成品编码:14bytes,ASCII码,少于14bytes最右侧以0x00填充;成品编码短标识:4bytes,ASCII码,少于4bytes最右侧以0x00填充。
其中,CHECK标识为累加校验和,表示包括有效负荷和累加校验和在内的字节数,帧长长度为1个字节,取值范围8~254,不包括“CRC校验和”的字节数。
其中,CRC标识为表示帧长和有效负荷的CRC16校验和,计算时不包括“累加校验和”字节,本字段为可选字段。如果一帧的CRC标志位为“1”,则需要在累加校验和后加入本字段。如果一帧的CRC标志位为“0”,则不加入本字段。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种确定测试结果的装置,图10是根据本发明实施例的确定测试结果的装置的结构框图,如图10所示,该装置包括:
发送单元1002,用于向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;
接收单元1004,用于接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;
第一获取单元1006,用于获取在脚本库中获取与所述应答指令相匹配的目标帧数据;
确定单元1008,用于根据所述目标帧数据确定所述待测模块的测试结果。
在一个可选的实施例中,上述获取单元包括:第一确定子单元,用于根据所述应答指令中的数据标识确定所述测试指令的目标发送方;第一获取子单元,用于在所述脚本库中获取与所述目标发送方对应的所述目标帧数据,其中,所述脚本库中记录了多个发送方,以及与每个发送方对应的帧数据。
在一个可选的实施例中,上述第一获取子单元包括:第一获取模块,用于获取所述应答指令中的字节码数据中的前M至N个字节,其中,N、M是大于或等于1的整数,M小于N;第一匹配模块,用于使用所述字节码数据中的所述前M至N个字节与所述目标发送方的所述目标帧数据的帧关键字进行匹配;第二获取模块,用于在匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在一个可选的实施例中,上述装置还包括:第一匹配单元,用于在所述目标帧数据的帧关键字匹配不成功的情况下,使用所述字节码数据中的前K个字节与所述目标发送方的所述目标帧数据的帧类型进行匹配,其中,K是大于或等于1的整数;第二获取单元,用于在所述目标帧数据的帧类型匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
在一个可选的实施例中,上述第一确定子单元包括:确定模块,用于根据所述应答指令中的所述数据标识的取值,确定所述测试指令的目标发送方,其中,当所述数据标识的取值为1时所述目标发送方为第一目标发送方,所述数据标识的取值为2时所述目标发送方为第二目标发送方。
在一个可选的实施例中,上述确定单元包括:解析子单元,用于在所述目标帧数据的起始字节位大于0的情况下,对所述目标帧数据进行解析,得到所述目标帧数据的解析结果;第二确定子单元,用于在所述目标发送方为第二目标发送方的情况下,将所述目标帧数据的解析结果确定为所述待测模块的测试结果。
在一个可选的实施例中,上述确定单元还包括:第一生成子单元,用于在所述目标发送方为第一目标发送方的情况下,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;第三确定子单元,还用于将所述目标帧数据的解析结果和所述应答帧字节码确定为所述待测模块的测试结果。
在一个可选的实施例中,上述确定单元还包括:第二生成子单元,用于在所述目标帧数据的起始字节位小于或等于0的情况下,若所述目标发送方为第一目标发送方,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;第四确定子单元,用于将所述应答帧字节码确定为所述待测模块的测试结果。
在一个可选的实施例中,上述解析子单元,包括:第三获取模块,用于根据所述目标帧数据的起始字节位,在所述脚本库中获取所述目标帧数据的数据区字节码;解析模块,用于对所述目标帧数据的数据区字节码进行解析,得到所述目标帧数据的解析结果。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (11)
1.一种确定测试结果的方法,其特征在于,包括:
向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;
接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;
根据所述应答指令中的数据标识确定所述测试指令的目标发送方;
在脚本库中获取与所述目标发送方对应的目标帧数据,其中,所述脚本库中记录了多个发送方,以及与每个发送方对应的帧数据,所述目标帧数据包括:帧数据起始字节位、数据标识、应答帧指令模板、应答帧数据区起始字节位;
根据所述目标帧数据的解析结果和/或应答帧字节码确定所述待测模块的测试结果,其中,所述解析结果表示所述待测模块中的属性数据,所述应答帧字节码是根据所述目标帧数据中的应答帧指令模板和输入参数生成的。
2.根据权利要求1所述的方法,其特征在于,所述在脚本库中获取与所述目标发送方对应的目标帧数据,包括:
获取所述应答指令中的字节码数据中的前M至N个字节,其中,N、M是大于或等于1的整数,M小于N;
使用所述字节码数据中的所述前M至N个字节与所述目标发送方的所述目标帧数据的帧关键字进行匹配;
在匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述目标帧数据的帧关键字匹配不成功的情况下,使用所述字节码数据中的前K个字节与所述目标发送方的所述目标帧数据的帧类型进行匹配,其中,K是大于或等于1的整数;
在所述目标帧数据的帧类型匹配成功的情况下,获取与所述目标发送方对应的所述目标帧数据。
4.根据权利要求1所述的方法,其特征在于,所述根据所述应答指令中的数据标识确定所述测试指令的目标发送方,包括:
根据所述应答指令中的所述数据标识的取值,确定所述测试指令的目标发送方,其中,当所述数据标识的取值为1时所述目标发送方为第一目标发送方,所述数据标识的取值为2时所述目标发送方为第二目标发送方,其中,所述第一目标发送方为IOT平台,所述第二目标发送方为kafka。
5.根据权利要求4所述的方法,其特征在于,所述根据所述目标帧数据的解析结果和/或应答帧字节码确定所述待测模块的测试结果,包括:
在所述目标帧数据的起始字节位大于0的情况下,对所述目标帧数据进行解析,得到所述目标帧数据的解析结果;
在所述目标发送方为第二目标发送方的情况下,将所述目标帧数据的解析结果确定为所述待测模块的测试结果。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述目标发送方为第一目标发送方的情况下,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;
将所述目标帧数据的解析结果和所述应答帧字节码确定为所述待测模块的测试结果。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述目标帧数据的起始字节位小于或等于0的情况下,若所述目标发送方为第一目标发送方,根据所述目标帧数据中的应答帧模板和输入参数,生成应答帧字节码;
将所述应答帧字节码确定为所述待测模块的测试结果。
8.根据权利要求5所述的方法,其特征在于,所述对所述目标帧数据进行解析,得到所述目标帧数据的解析结果,包括:
根据所述目标帧数据的起始字节位,在所述脚本库中获取所述目标帧数据的数据区字节码;
对所述目标帧数据的数据区字节码进行解析,得到所述目标帧数据的解析结果。
9.一种确定测试结果的装置,其特征在于,包括:
发送单元,用于向待测模块发送测试指令,其中,所述测试指令用于指示对所述待测模块的待测功能进行测试;
接收单元,用于接收所述待测模块发送的应答指令,其中,所述应答指令是所述待测模块对所述测试指令的应答;
获取单元,用于根据所述应答指令中的数据标识确定所述测试指令的目标发送方;在脚本库中获取与所述目标发送方对应的目标帧数据,其中,所述脚本库中记录了多个发送方,以及与每个发送方对应的帧数据,所述目标帧数据包括:帧数据起始字节位、数据标识、应答帧指令模板、应答帧数据区起始字节位;
确定单元,用于根据所述目标帧数据的解析结果和/或应答帧字节码确定所述待测模块的测试结果,其中,所述解析结果表示所述待测模块中的属性数据,所述应答帧字节码是根据所述目标帧数据中的应答帧指令模板和输入参数生成的。
10.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序被处理器执行时实现权利要求1至8中任一项所述的方法。
11.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210530928.5A CN115002014B (zh) | 2022-05-16 | 2022-05-16 | 确定测试结果的方法、装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210530928.5A CN115002014B (zh) | 2022-05-16 | 2022-05-16 | 确定测试结果的方法、装置、存储介质及电子装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115002014A CN115002014A (zh) | 2022-09-02 |
CN115002014B true CN115002014B (zh) | 2024-03-22 |
Family
ID=83027142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210530928.5A Active CN115002014B (zh) | 2022-05-16 | 2022-05-16 | 确定测试结果的方法、装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115002014B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110380932A (zh) * | 2019-07-17 | 2019-10-25 | 中国工商银行股份有限公司 | 用于安全设备的测试方法和装置、以及测试系统 |
CN112737886A (zh) * | 2020-12-29 | 2021-04-30 | 交控科技股份有限公司 | 一种工装测试方法及系统 |
US11182275B1 (en) * | 2020-10-23 | 2021-11-23 | Capital One Services, Llc | Systems and method for testing computing environments |
CN113836014A (zh) * | 2021-09-18 | 2021-12-24 | 青岛中科曙光科技服务有限公司 | 一种接口测试方法、装置、电子设备和存储介质 |
-
2022
- 2022-05-16 CN CN202210530928.5A patent/CN115002014B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110380932A (zh) * | 2019-07-17 | 2019-10-25 | 中国工商银行股份有限公司 | 用于安全设备的测试方法和装置、以及测试系统 |
US11182275B1 (en) * | 2020-10-23 | 2021-11-23 | Capital One Services, Llc | Systems and method for testing computing environments |
CN112737886A (zh) * | 2020-12-29 | 2021-04-30 | 交控科技股份有限公司 | 一种工装测试方法及系统 |
CN113836014A (zh) * | 2021-09-18 | 2021-12-24 | 青岛中科曙光科技服务有限公司 | 一种接口测试方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115002014A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104838618B (zh) | 在无线通信系统中验证访问授权的方法和设备 | |
CN112073471B (zh) | 设备的控制方法和装置、存储介质及电子装置 | |
US9930632B2 (en) | M2M application remote registration method, device, system and storage medium | |
CN104754062B (zh) | 基于互联网的信息推广方法、服务器及用户终端 | |
CN113168334A (zh) | 数据处理方法、装置、电子设备及可读存储介质 | |
CN109842515B (zh) | 一种多设备配网的方法、服务器和计算机存储介质 | |
CN114697150B (zh) | 命令的下发方法和装置、存储介质及电子装置 | |
CN115002014B (zh) | 确定测试结果的方法、装置、存储介质及电子装置 | |
CN105959174A (zh) | 一种智能设备平台的测试方法和装置 | |
CN116107975A (zh) | 设备的控制方法和装置、存储介质及电子装置 | |
CN116027937A (zh) | 待编辑组件的渲染方法和装置、存储介质及电子装置 | |
CN116360584A (zh) | 虚拟目标产品的生成方法、装置、存储介质及电子装置 | |
CN115687806A (zh) | 目标设备列表的确定方法、装置、存储介质及电子装置 | |
CN116033006A (zh) | 数据处理方法、系统、存储介质及电子装置 | |
CN113132333B (zh) | 组网登录方法、家电设备、家电系统及存储介质 | |
CN112188486B (zh) | 家电设备及其组网方法、局域网系统、存储介质 | |
CN113791766A (zh) | 组合数据接口的方法、电子设备和可读存储介质 | |
CN115174383B (zh) | 设备更新方法、存储介质及电子装置 | |
CN114697345B (zh) | 信息更新方法、装置和存储介质及电子装置 | |
CN116301767A (zh) | 接口文件的生成方法、装置、存储介质及电子装置 | |
CN115277412B (zh) | 边缘网关的升级方法及装置、存储介质及电子装置 | |
CN115296958B (zh) | 设备控制任务的分发方法、装置、存储介质及电子装置 | |
CN117891490A (zh) | 一种组件的配置方法、系统、电子设备及存储介质 | |
CN116541012A (zh) | 基础参数的修改方法及装置、存储介质及电子装置 | |
CN116243944A (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 |