自动驾驶软件的自动测试方法及装置制造方法及图纸

技术编号:27143783 阅读:26 留言:0更新日期:2021-01-27 21:36
本申请涉及一种自动驾驶软件的自动测试方法及装置,属于软件测试技术领域,该方法包括:读取待测试的所述自动驾驶软件的数据文件,所述数据文件包括至少一种数据类型;对于所述数据文件中目标数据类型的输入数据,使用所述输入数据进行软件在环SIL测试,并在测试过程中使用预设编译器进行编译;测试过程中得到的算法中间数据与所述自动驾驶软件在实际车辆中运行时得到的实际中间数据相同;所述预设编译器不使用许可证进行编译;将所述算法中间数据写入目标位置;可以解决现有的软件测试方式从编写代码到嵌入式编译、烧写、上车测试调试周期长的问题;由于可以在预设编译器内一键编译、运行,测试结果,因此,可以提高编译效率。率。率。

【技术实现步骤摘要】
自动驾驶软件的自动测试方法及装置


[0001]本申请涉及一种自动驾驶软件的自动测试方法及装置,属于软件测试


技术介绍

[0002]以测试车辆中的自动驾驶软件的性能为例,在自动驾驶软件在开发中和开发完成的算法代码,会在车辆的微控制单元(Microcontroller Unit,MCU)上运行测试、调试和性能分析。
[0003]但是,在现有的测试过程中,通常从编写代码到嵌入式编译、烧写、上车测试调试周期长,效率低。

技术实现思路

[0004]本申请提供了一种自动驾驶软件的自动测试方法及装置,可以解决现有的软件测试方式从编写代码到嵌入式编译、烧写、上车测试调试周期长的问题。本申请提供如下技术方案:
[0005]第一方面,提供了一种自动驾驶软件的自动测试方法,所述方法包括:
[0006]读取待测试的所述自动驾驶软件的数据文件,所述数据文件包括至少一种数据类型;
[0007]对于所述数据文件中目标数据类型的输入数据,使用所述输入数据进行软件在环SIL测试,并在测试过程中使用预设编译器进行编译;测试过程中得到的算法中间数据与所述自动驾驶软件在实际车辆中运行时得到的实际中间数据相同;所述预设编译器不使用许可证进行编译;
[0008]将所述算法中间数据写入目标位置。
[0009]可选地,所述在测试过程中使用预设编译器对代码进行编译,包括:
[0010]接收用户通过所述预设编译器执行的断点设置操作;
[0011]在编译过程中,在执行至所述断点设置操作指示的断点位置时,输出所述断点位置之前已编译的代码对应的算法中间数据。
[0012]可选地,所述将所述算法中间数据写入目标位置,包括:
[0013]将所述算法中间数据按照预设规则写入数据库;
[0014]所述将所述算法中间数据写入目标位置之后,还包括:
[0015]读取所述数据库中的数据库数据;
[0016]将所述数据库数据通过网页显示。
[0017]可选地,所述至少一种数据类型包括视频数据类型,所述方法还包括:
[0018]将所述数据文件中所述视频数据类型的数据写入所述数据库。
[0019]可选地,所述将所述算法中间数据写入目标位置,包括:
[0020]将所述算法中间数据按照预设规则写入输出文件;
[0021]所述将所述算法中间数据写入目标位置之后,还包括:
[0022]将所述输出文件与所述数据文件中的真值文件进行比较,以确定所述自动驾驶软件的算法代码是否符合需求;
[0023]输出比较结果。
[0024]可选地,所述将所述输出文件与所述数据文件中的真值文件进行比之前,还包括:
[0025]使用bat脚本语言对所述数据文件进行更改,更改后的数据文件包括所述真值文件。
[0026]可选地,所述目标数据类型包括CAN数据类型和SPI数据类型,所述方法还包括:
[0027]将所述CAN数据类型和所述SPI数据类型分别发送至对应的适配代码。
[0028]可选地,所述预设编译器为Visual Studio集成开发环境IDE。
[0029]第二方面,提供了一种自动驾驶软件的自动测试装置,所述装置包括:
[0030]数据读取模块,用于读取待测试的所述自动驾驶软件的数据文件,所述数据文件包括至少一种数据类型;
[0031]软件测试模块,用于对于所述数据文件中目标数据类型的输入数据,使用所述输入数据进行软件在环SIL测试,并在测试过程中使用预设编译器对代码进行编译;测试过程中得到的算法中间数据与所述自动驾驶软件在实际车辆中运行时得到的实际中间数据相同;所述预设编译器不使用许可证进行编译;
[0032]数据输出模块,用于将所述算法中间数据写入目标位置。
[0033]可选地,所述软件测试模块,包括:
[0034]断点设置单元,用于接收用户通过所述预设编译器执行的断点设置操作;
[0035]数据输出单元,用于在编译过程中,在执行至所述断点设置操作指示的断点位置时,输出所述断点位置之前已编译的代码对应的算法中间数据。
[0036]本申请的有益效果在于:通过读取待测试的自动驾驶软件的数据文件,数据文件包括至少一种数据类型;对于数据文件中目标数据类型的输入数据,使用输入数据进行软件在环SIL测试,并在测试过程中使用预设编译器进行编译;测试过程中得到的算法中间数据与自动驾驶软件在实际车辆中运行时得到的实际中间数据相同;预设编译器不使用许可证进行编译;将算法中间数据写入目标位置;可以解决现有的软件测试方式从编写代码到嵌入式编译、烧写、上车测试调试周期长的问题;由于可以在预设编译器内一键编译、运行,测试结果。
[0037]另外,预设编译器不使用许可证进行编译,因此,可以提高编译效率。
[0038]另外,Visual Studio IDE支持一键编译、运行并输出测试结果,且可以解决绝大部分语法错误,可以提高测试效率。
[0039]另外,Visual Studio IDE的调试手段丰富,支持根据需求设置断点,查看任何中间变量。
[0040]另外,通过输出关键数据到文件或数据库,支持其它应用的分析操作,比如:自动化批量场景测试等。
[0041]上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
附图说明
[0042]图1是本申请一个实施例提供的自动驾驶软件的自动测试方法的流程图;
[0043]图2是本申请一个实施例提供的自动驾驶软件的自动测试的示意图;
[0044]图3是本申请一个实施例提供的自动驾驶软件的自动测试装置的框图。
具体实施方式
[0045]下面结合附图和实施例,对本申请的具体实施方式作进一步详细描述。以下实施例用于说明本申请,但不用来限制本申请的范围。
[0046]首先,对本申请涉及的若干名词进行介绍。
[0047]软件在环仿真(Software In Loop,SIL):是一种软件测试的方法,用于在计算机上验证控制策略模型编译生成的代码是否满足功能需求。SIL测试包括汽车控制系统的仿真,通过在仿真计算环境中运行实际嵌入处理器中的软件来获取全部或一部分控制算法的行为。SIL测试包括模拟负载,例如控制器局域网(CAN)、控制模块、机器模型、传感器等的输入和输出。在SIL测试环境中,被测试的软件被虚拟连接到机器,SIL测试不需要特殊的与机器相关的硬件。
[0048]Microsoft Visual Studio(Visual Studio,VS):是开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(Integrated Development Environment,ID本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动驾驶软件的自动测试方法,其特征在于,所述方法包括:读取待测试的所述自动驾驶软件的数据文件,所述数据文件包括至少一种数据类型;对于所述数据文件中目标数据类型的输入数据,使用所述输入数据进行软件在环SIL测试,并在测试过程中使用预设编译器进行编译;测试过程中得到的算法中间数据与所述自动驾驶软件在实际车辆中运行时得到的实际中间数据相同;所述预设编译器不使用许可证进行编译;将所述算法中间数据写入目标位置。2.根据权利要求1所述的方法,其特征在于,所述在测试过程中使用预设编译器对代码进行编译,包括:接收用户通过所述预设编译器执行的断点设置操作;在编译过程中,在执行至所述断点设置操作指示的断点位置时,输出所述断点位置之前已编译的代码对应的算法中间数据。3.根据权利要求1所述的方法,其特征在于,所述将所述算法中间数据写入目标位置,包括:将所述算法中间数据按照预设规则写入数据库;所述将所述算法中间数据写入目标位置之后,还包括:读取所述数据库中的数据库数据;将所述数据库数据通过网页显示。4.根据权利要求3所述的方法,其特征在于,所述至少一种数据类型包括视频数据类型,所述方法还包括:将所述数据文件中所述视频数据类型的数据写入所述数据库。5.根据权利要求1所述的方法,其特征在于,所述将所述算法中间数据写入目标位置,包括:将所述算法中间数据按照预设规则写入输出文件;所述将所述算法中间数据写入目标位置之后,还包括:将所述输出文件与所述数据文件中的真值文件进行比较,以确...

【专利技术属性】
技术研发人员:董庆运徐庆刘磊丁成
申请(专利权)人:知行汽车科技苏州有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1