本技术涉及e2e校验,尤其涉及一种校验方法、装置、电子设备及存储介质。
背景技术:
1、对于.dbc文件中含有的checksum和rollingcounter的报文,软件需要对其进行校验处理。在autosar(automotive open system architecture,汽车开放系统架构)的标准模块com中,可以对每个报文增加callout函数,此callout函数中可以增加报文的校验处理。按照上述方式,对于待校验报文,在达芬奇config工具中逐个添加callout函数并手动编写callout函数代码。
2、对于含有的checksum和rollingcounter待校验报文,需要人为在.dbc文件中逐个识别出来,并手动在达芬奇config工具中添加callout函数,然后还需要手动编写callout函数代码。大量的重复工作,不仅会浪费人力时间,而且容易造成修改错误或者遗漏等问题。
技术实现思路
1、本技术实施例提供一种校验方法、装置、电子设备及存储介质,以解决现有技术中人为在.dbc文件中逐个识别出来,并手动在达芬奇config工具中添加callout函数,然后还需要手动编写callout函数代码。存在大量重复的工作,不仅会浪费人力时间,而且容易造成修改错误或者遗漏等问题的问题。
2、为了解决上述技术问题,本技术实施例是这样实现的:
3、第一方面,本技术实施例提供了一种校验方法,所述方法包括:
4、调用预设工具,识别dbc文件中的待校验报文;
5、获取达芬奇config工具中与所述待校验报文匹配的配置信息;
6、在所述配置信息内添加预先定义的callout函数,以生成callout函数代码,实现can报文e2e校验。
7、可选地,在所述调用预设工具,识别dbc文件中的待校验报文之前,还包括:
8、调用预设脚本编写报文识别功能的第一功能代码、节点查找功能的第二功能代码、以及callout函数添加功能的第三功能代码;
9、封装所述第一功能代码、所述第二功能代码和所述第三功能代码,生成所述预设工具。
10、可选地,所述调用预设工具,识别dbc文件中的待校验报文,包括:
11、调用所述预设工具中的第一功能代码,对所述dbc文件中的各信号报文进行识别,得到识别结果;
12、根据所述识别结果,确定所述各信号报文包含设定关键词的所述待校验报文。
13、可选地,所述获取达芬奇config工具中与所述待校验报文匹配的配置信息,包括:
14、调用所述预设工具中的第二功能代码,获取所述达芬奇config工具的cfg配置文件中的所有节点;
15、获取所述所有节点中所述待校验报文对应的目标节点;
16、从所述目标节点中筛选出与callout函数匹配的子节点,并将该子节点作为所述配置信息。
17、可选地,所述在所述配置信息内添加预先定义的callout函数,以生成callout函数代码,实现can报文e2e校验,包括:
18、调用所述预设工具中的第三功能代码,获取预先定义的所述callout函数;
19、将所述callout函数添加到所述子节点上;
20、根据所述子节点上的所述callout函数,生成所述callout函数代码;
21、通过所述callout函数代码调用预先编写函数库内对应的函数,进行can报文e2e校验。
22、可选地,所述预设脚本为python脚本。
23、第二方面,本技术实施例提供了一种校验装置,所述装置包括:
24、待校验报文识别模块,用于调用预设工具,识别dbc文件中的待校验报文;
25、配置信息获取模块,用于获取达芬奇config工具中与所述待校验报文匹配的配置信息;
26、e2e校验模块,用于在所述配置信息内添加预先定义的callout函数,以生成callout函数代码,实现can报文e2e校验。
27、可选地,所述装置还包括:
28、功能代码编写模块,用于调用预设脚本编写报文识别功能的第一功能代码、节点查找功能的第二功能代码、以及callout函数添加功能的第三功能代码;
29、预设工具生成模块,用于封装所述第一功能代码、所述第二功能代码和所述第三功能代码,生成所述预设工具。
30、可选地,所述待校验报文识别模块包括:
31、识别结果获取单元,用于调用所述预设工具中的第一功能代码,对所述dbc文件中的各信号报文进行识别,得到识别结果;
32、待校验报文确定模块,用于根据所述识别结果,确定所述各信号报文包含设定关键词的所述待校验报文。
33、可选地,所述配置信息获取模块包括:
34、所有节点获取单元,用于调用所述预设工具中的第二功能代码,获取所述达芬奇config工具的cfg配置文件中的所有节点;
35、目标节点获取单元,用于获取所述所有节点中所述待校验报文对应的目标节点;
36、配置信息获取单元,用于从所述目标节点中筛选出与callout函数匹配的子节点,并将该子节点作为所述配置信息。
37、可选地,所述e2e校验模块包括:
38、callout函数获取单元,用于调用所述预设工具中的第三功能代码,获取预先定义的所述callout函数;
39、callout函数添加单元,用于将所述callout函数添加到所述子节点上;
40、callout函数代码生成单元,用于根据所述子节点上的所述callout函数,生成所述callout函数代码;
41、e2e校验单元,用于通过所述callout函数代码调用预先编写函数库内对应的函数,进行can报文e2e校验。
42、可选地,所述预设脚本为python脚本。
43、第三方面,本技术实施例提供了一种电子设备,包括:
44、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一项所述的校验方法。
45、第四方面,本技术实施例提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一项所述的校验方法。
46、在本技术实施例中,通过调用预设工具,识别dbc文件中的待校验报文。获取达芬奇config工具中与待校验报文匹配的配置信息。在配置信息内容添加预先定义的callout函数,以生成callout函数代码,实现can报文e2e校验。本技术实施例通过预设工具即可实现dbc文件中待校验报文的识别,以及config工具中添加callout函数的添加,无需人工操作,能够节省大量的人力成本。同时,无需人工编写callout函数代码,能够提高e2e校验的效率,且相较于人工编写callout函数代码的方式,能够降低校验出错率。
47、上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。