System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及汽车软件网络测试,尤其涉及一种电子控制器can信号自动化测试方法及系统。
技术介绍
1、随着汽车智能化时代的到来,车型迭代较传统燃油车,出现了爆发式的加快,由此带来汽车上的电子控制器(ecu)不仅在数量上越来越多,功能上亦不断复杂化,电子控制器(ecu)已成为车辆中最核心的零部件之一,是车辆的通信和控制中枢,对车辆的运行状态起到了决策作用。
2、面对不断的新出车型,以及智能化汽车ota功能的普及,汽车电子控制器的软件开发工作量也呈几何式增长,而can通讯作为这些ecu之间的主要通讯方式,承担的角色也越来越重要,假设在汽车上成百上千个can信号的进行数据传递的时候,当某个信号的接收或者发送处理出现错误,轻则出现座舱功能体验不佳,重则出现严重的车辆行驶故障,带来极大的安全危害。
3、当前,对汽车ecu软件can总线的信号测试,大都是由测试工程师结合调试工具,进行逐个信号的添加,手动进行每个can信号模拟数据的发送和接收。由于信号数量较大,can总线通信测试需要耗费大量时间,测试效率很低,且当测试任务量急剧加大时,测试质量亦难以得到保障,同时对can总线通讯数据传输的正确性也存在一定的影响。
技术实现思路
1、本专利技术的目的是为了解决现有技术中存在的缺点,而提出的一种电子控制器can信号自动化测试方法及系统。
2、为了实现上述目的,本专利技术采用了如下技术方案:一种电子控制器can信号自动化测试方法,包括步骤:
3、s1:读
4、s2:运行python脚本,分别调用分析模块canoe和测量模块canape,建立测试模型,并对所述测试用例集中的数据进行遍历读取,生成报文发送给所述测试模型;
5、s3:对电子控制器ecu的发送信号和接收信号进行接收,读取所述电子控制器上的can总线的测试参数,分别对发送信号和接收信号进行测试,获取测试结果,并写入所述测试用例集中;
6、s4:对所述测试结果与所述期望结果进行一致性比较,若符合,则对测试结果标记为通过,并生成测试报告。
7、作为上述技术方案的进一步描述:在所述步骤s1中,还包括:
8、s11:根据电子控制器can总线发送信号和接收信号过程,对接口参数、测试参数、信号参数和期望结果进行编写,组成测试用例集。
9、作为上述技术方案的进一步描述:在所述步骤s2中,还包括:
10、s21:调用分析模块canoe和测量模块canape,通过分析模块canoe发送can总线的信号值,通过测量模块canape选取通讯协议,建立测试模型;
11、s22:通过python脚本将信号值添加到所述测量模块canape的a2l文件中,并依据测试过程,对所述测试用例集中的数据进行遍历读取,将测试参数分别定义为标定量或观测量,并发送给所述测试模型。
12、作为上述技术方案的进一步描述:对发送信号和接收信号进行测试,为发送信号时,将测试数据应用层和底层的变量分别定义为标定量和观测量;为接收信号时,将dbc信号值定义为标定量、底层值定义为观测量。
13、作为上述技术方案的进一步描述:在所述步骤s3中,还包括:
14、s31:根据发送信号在分析模块canoe中建立系统变量,将所述发送信号的全部测试参数建立对应的系统变量,并进行储存;
15、s32:python脚本读取系统变量,再通过遍历测试用例集,改变系统变量的赋值,获取所述a2l文件中底层值,与期望结果进行对比,将a2l中的信号参数加载到测量模块canape中;
16、s33:测量模块canape通过发送在分析模块canoe中建立的系统变量,对can总线上电子控制器的接收信号进行测试,并将测试结果写入所述测试用例集中。
17、作为上述技术方案的进一步描述:在所述步骤s4中,还包括:
18、s41:将所述测试结果写入到所述测试用例集中,与期望结果进行一致性比较,若测试结果与期望结果一致,则标记为通过,若不一致,则对测试结果标记为错误,并生成测试报告。
19、作为上述技术方案的进一步描述:所述通讯协议为xcp协议,使用a2l文件来记录所述电子控制器内部参数的结构和含义,使所述电子控制器之间进行数据交换。
20、作为上述技术方案的进一步描述:使用python调用分析模块canoe,使用分析模块canoe上的com接口来控制canoe的功能。
21、作为上述技术方案的进一步描述:使用python调用测量模块canape的com接口来实现对电子控制器的测量标定,并运行测试模型。
22、还包括一种电子控制器can信号自动化测试系统,包括:
23、采集模块,对电子控制器的can总线的发送信号和接收信号的测试参数进行收集;
24、分析模块,对测试参数进行配置,通过建立系统变量与测试用例集中的期望结果进行比较;
25、测量模块,对接收信号和发送信号进行测试,得到测试参数后根据所述分析模块进行测试判断;
26、调用模块,通过运行python脚本,调用所述分析模块和所述标测量模块的数据,建立测试模型;
27、判断模块,对测试结果和期望结果进行比较,判断一致性。
28、上述技术方案具有如下优点或有益效果:
29、1、通过python实现的can总线信号自动化测试,无需单独在调试器中逐一添加信号变量,对信号的测试结果通过自动进行对比,且对不同项目只需加载相关文件、调整文档存放路径,无需大幅度更改代码,从而达到用例脚本逻辑统一、可复用、编写代码更少、数据易于维护的目的;极大提升了电子控制器can信号的测试效率,保证了电子控制器信号传输的正确性。
30、2、通过python调用can总线分析模块canoe和测量模块canape,通过python读取测试用例中的测试信号和测试数据,通过将信号加载到a2l文件的方式,利用xcp协议直接获取待观测信号数据值,无需再外接调试器劳特巴赫工具进行繁重的变量手动赋值过程;同时对测试结果与测试用例中期望结果的一致性进行自动化判断。
本文档来自技高网...【技术保护点】
1.一种电子控制器CAN信号自动化测试方法,其特征在于,包括步骤:
2.根据权利要求1所述的测试方法,其特征在于:在所述步骤S1中,还包括:
3.根据权利要求1所述的测试方法,其特征在于:在所述步骤S2中,还包括:
4.根据权利要求3所述的测试方法,其特征在于:对发送信号和接收信号进行测试,为发送信号时,将测试数据应用层和底层的变量分别定义为标定量和观测量;为接收信号时,将dbc信号值定义为标定量、底层值定义为观测量。
5.根据权利要求3所述的测试方法,其特征在于:在所述步骤S3中,还包括:
6.根据权利要求1所述的测试方法,其特征在于:在所述步骤S4中,还包括:
7.根据权利要求3所述的测试方法,其特征在于:所述通讯协议为XCP协议,使用A2L文件来记录所述电子控制器内部参数的结构和含义,使所述电子控制器之间进行数据交换。
8.根据权利要求1所述的测试方法,其特征在于:使用Python调用分析模块CANoe,使用分析模块CANoe上的com接口来控制CANoe的功能。
9.根据权利要
10.一种电子控制器CAN信号自动化测试系统,其特征在于,包括:
...【技术特征摘要】
1.一种电子控制器can信号自动化测试方法,其特征在于,包括步骤:
2.根据权利要求1所述的测试方法,其特征在于:在所述步骤s1中,还包括:
3.根据权利要求1所述的测试方法,其特征在于:在所述步骤s2中,还包括:
4.根据权利要求3所述的测试方法,其特征在于:对发送信号和接收信号进行测试,为发送信号时,将测试数据应用层和底层的变量分别定义为标定量和观测量;为接收信号时,将dbc信号值定义为标定量、底层值定义为观测量。
5.根据权利要求3所述的测试方法,其特征在于:在所述步骤s3中,还包括:
6.根据权利要求1所述的测试方法,其特征在于...
【专利技术属性】
技术研发人员:陈晶杰,周伟,胡含,喻延福,邹仁刚,
申请(专利权)人:上海千顾汽车科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。