一种基于仪表MCU软件平台的自动化测试方法及系统技术方案

技术编号:36683642 阅读:18 留言:0更新日期:2023-02-27 19:43
本发明专利技术涉及汽车仪表UI及功能测试技术领域,提供一种基于仪表MCU软件平台的自动化测试方法及系统,预先根据内存映射文件和软件声明变量文件计算内存地址的地址映射表,在进行测试时,控制被测仪表将测试结果存储在软件存储变量(RTE变量的子变量)中。在进行测试验证时,仅交互对应的目标内存映射地址、目标内存地址数据,使得PC端可直接根据目标内存地址数据访问软件存储变量获取对应的测试结果,随后与输入的预期输出结果数据进行比较,根据比较结果输出测试报告,自动化的测试流程,有效地提高了测试效率、准确率。准确率。准确率。

【技术实现步骤摘要】
一种基于仪表MCU软件平台的自动化测试方法及系统


[0001]本专利技术涉及汽车仪表UI及功能测试
,尤其涉及一种基于仪表MCU软件平台的自动化测试方法及系统。

技术介绍

[0002]目前,针对汽车仪表UI及功能测试主要靠人工功能测试和白盒工具自动化测试,仅能够实现部分功能的自动化测试。
[0003]在人工测试方面,以项目的功能规范文档为依据制定相应的测试用例,在制定过程中需要分析dbc(Database Can,CAN数据库)文件,编写LabVIEW程序用于发送功能报文,设计完测试用例后,需人工对表格中测试用例依次执行,在执行过程中,需要不断点击程序界面的按钮发送功能报文,对于一些重复度高且数量较多的测试用例也只能逐个执行,还有一些功能现象变化较快人眼很难进行捕捉,一旦错过了就要重新进行测试,这样一系列的操作容易造成测试人员疲劳并且测试效率也比较低。另外,部分功能测试所用到机械手、相机及自动发送CAN报文的相关设备,由于成本较高无法满足人手一套的需求,所以当测试项目较多的时候,需要等待前面项目测试完毕后才可进行本项目的测试。
[0004]白盒工具自动化测试是基于代码逻辑层面的测试,主要通过在白盒测试工具编写测试用例,使用软件内部自动化运行程序运行测试用例,最后验证测试结果。虽然白盒测试基于代码逻辑层面可以很精确的了解及控制功能内部逻辑的运作,但是,无论自动化与否白盒测试用例的设计都是耗时且复杂,需要测试人员对被测软件有着透彻的代码级理解。另外,白盒测试用例重用度会跟着软件变更幅度增大而降低,若软件变更较大则容易导致测试用例无法重用需要重新设计。基于代码层面的测试,也无法模拟真实环境中异常条件下的状况,不能确保在真实环境中功能的可信度。

技术实现思路

[0005]本专利技术提供一种基于仪表MCU软件平台的自动化测试方法及系统,解决了现有的汽车仪表测试方案测试用例设计难度高、复用率低,无法有效模拟真实环境,导致测试效率低、成本较高的技术问题。
[0006]为解决以上技术问题,本专利技术提供一种基于仪表MCU软件平台的自动化测试方法,包括步骤:
[0007]S1、获取dbc文件并解析,得到dbc功能报文数据并存储;
[0008]S2、根据内存映射文件和软件声明变量文件计算内存地址的地址映射表;
[0009]S3、获取当前输入的测试变量,生成对应的测试用例并执行;
[0010]S4、根据所述地址映射表获取被测仪表的测试结果,生成并输出测试报告。
[0011]在进一步的实施方案中,所述步骤S1包括步骤:
[0012]S11、根据获取到的dbc文件路径,获取对应的dbc文件;
[0013]S12、对所述dbc文件进行解析获取车身功能性报文信号;
[0014]S13、对所述车身功能性报文信号进行解析,获取其信号信息并存储到软件内存中。
[0015]在进一步的实施方案中,所述信号信息至少包括报文ID、长度以及报文中的信号名、起始位和长度。
[0016]在进一步的实施方案中,所述步骤S2包括步骤:
[0017]S21、获取解析软件声明变量文件得到RTE变量信息,计算出RTE变量中各个子变量对应的内存地址偏移量;
[0018]S22、读取基于MCU软件编译生成的内存映射文件,获取RTE变量的内存映射地址;
[0019]S23、根据所述内存地址偏移量和所述内存映射地址,计算所述RTE变量中每一所述子变量的内存地址数据,整合得到地址映射表并存储。
[0020]在进一步的实施方案中,所述步骤S3包括步骤:
[0021]S31、获取当前输入的测试变量生成对应的测试用例;
[0022]S32、从软件内存中提取与所述测试用例对应的dbc数据,并配置模拟场景;
[0023]S32、根据所述dbc数据生成功能报文,并发送到被测仪表;
[0024]S33、所述被测仪表根据所述功能报文执行测试,输出测试结果并存储到所述RTE变量的所述子变量中。
[0025]在进一步的实施方案中,所述测试用例至少包括功能报文输入数据、预期输出结果数据以及环境条件。
[0026]在进一步的实施方案中,所述步骤S4包括步骤:
[0027]S41、获取与预期输出结果数据对应的目标内存映射地址;
[0028]S42、根据所述目标内存映射地址生成验证报文,并发送到所述被测仪表;
[0029]S43、所述被测仪表从所述验证报文中获取所述目标内存映射地址,进而根据所述目标内存映射地址获取相应所述测试结果的目标内存地址数据;
[0030]S44、根据所述目标内存地址数据生成反馈报文并发送到PC端;
[0031]S45、根据所述目标内存地址数据和所述地址映射表获取对应的所述测试结果,并与所述预期输出结果数据进对比,根据对比结果生成并输出测试报告。
[0032]在进一步的实施方案中,所述测试用例的获取具体为:获取用户编辑界面上工具表格栏中测试变量的输入数据,进而从dbc数据库中提取对应的dbc数据;或者在用户编辑界面上导入Excel格式的测试用例文件。
[0033]本专利技术:
[0034]通过预先对dbc文件进行解析,获取到车身功能性报文信号的信号信息并存储到软件内存中,用户只需要在用户编辑界面上工具表格栏的测试变量中输入相应的数据,即可从软件内存获取对应功能报文,而无需额外编写;同时由于功能报文输入来源为稳定的dbc文件,文件变更较少,测试用例复用率高。
[0035]预先根据内存映射文件和软件声明变量文件计算内存地址的地址映射表,在进行测试时,控制被测仪表将测试结果存储在软件存储变量(RTE变量的子变量)中。在进行测试验证时,仅交互对应的目标内存映射地址、目标内存地址数据,使得PC端可直接根据目标内存地址数据访问软件存储变量获取对应的测试结果,随后与输入的预期输出结果数据进行比较,根据比较结果输出测试报告,自动化的测试流程,有效地提高了测试效率、准确率。
[0036]本专利技术提供一种基于仪表MCU软件平台的自动化测试系统,用于实现上述的一种基于仪表MCU软件平台的自动化测试方法,包括主控计算机、被测仪表、程控电源、继电器和Can收发盒子;所述主控计算机与所述程控电源、继电器和所述Can收发盒子电性连接,所述被测仪表与所述程控电源、继电器和所述Can收发盒子电性连接;
[0037]所述主控计算机上安装有测试工具,用于控制所述程控电源、继电器和所述Can收发盒子;
[0038]所述程控电源、继电器,用于在所述主控计算机的控制下模拟所述被测仪表的模拟场景;
[0039]所述Can收发盒子用于负责功能报文、验证报文的发送及反馈报文的接收,执行所述主控计算机与所述被测仪表的信息交互。
[0040]本专利技术在设备方面采用简单的CAN收发盒子、继电器以及程控电源,配置被测设备的模拟环境,测试设备较少但满足模拟真实环境中异常条件的需求,减少了本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于仪表MCU软件平台的自动化测试方法,其特征在于,包括步骤:S1、获取dbc文件并解析,得到dbc功能报文数据并存储;S2、根据内存映射文件和软件声明变量文件计算内存地址的地址映射表;S3、获取当前输入的测试变量,生成对应的测试用例并执行;S4、根据所述地址映射表获取被测仪表的测试结果,生成并输出测试报告。2.如权利要求1所述的一种基于仪表MCU软件平台的自动化测试方法,其特征在于,所述步骤S1包括步骤:S11、根据获取到的dbc文件路径,获取对应的dbc文件;S12、对所述dbc文件进行解析获取车身功能性报文信号;S13、对所述车身功能性报文信号进行解析,获取其信号信息并存储到软件内存中。3.如权利要求2所述的一种基于仪表MCU软件平台的自动化测试方法,其特征在于:所述信号信息至少包括报文ID、长度以及报文中的信号名、起始位和长度。4.如权利要求3所述的一种基于仪表MCU软件平台的自动化测试方法,其特征在于,所述步骤S2包括步骤:S21、获取解析软件声明变量文件得到RTE变量信息,计算出RTE变量中各个子变量对应的内存地址偏移量;S22、读取基于MCU软件编译生成的内存映射文件,获取RTE变量的内存映射地址;S23、根据所述内存地址偏移量和所述内存映射地址,计算所述RTE变量中每一所述子变量的内存地址数据,整合得到地址映射表并存储。5.如权利要求1所述的一种基于仪表MCU软件平台的自动化测试方法,其特征在于,所述步骤S3包括步骤:S31、获取当前输入的测试变量生成对应的测试用例;S32、从软件内存中提取与所述测试用例对应的dbc数据,并配置模拟场景;S32、根据所述dbc数据生成功能报文,并发送到被测仪表;S33、所述被测仪表根据所述功能报文执行测试,输出测试结果并存储到所述RTE变量的所述子变量中。6.如权利要求5所述的一种...

【专利技术属性】
技术研发人员:何建忠
申请(专利权)人:惠州市德赛西威汽车电子股份有限公司
类型:发明
国别省市:

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

1