System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及刷写测试的,特别是涉及一种基于python和capl语言的自动化uds刷写测试方法及系统。
技术介绍
1、软件刷写,是指通过上位机等媒介将软件烧录到控制器主芯片中指定地址的一种方法,从而达到写入或更新主芯片中程序的目的。uds(unified diagnostic services统一的诊断服务)是一种通用的诊断服务标准,用于汽车电子控制单元(ecu)的诊断和调试。uds是iso14229标准定义的一种通信协议,可以在can、lin等多种总线上进行通信。uds协议被广泛应用于汽车电子控制系统的诊断和调试,成为现代化汽车制造的重要组成部分。
2、目前uds刷写测试的方式主要为手动测试、ecu-test软件、canoe软件和hil系统结合的自动化测试。其中手动测试需要测试人员对照测试用例逐条目进行测试,同时根据观察刷写进度手动进行故障注入测试。
3、然而,手动测试需要测试人员根据观察刷写进度手动进行故障注入测试,测试效率不高且手动故障注入存在不小的误差;而自动测试需要企业同时拥有hil设备、ecu-test软件和canoe软件及其硬件,该套设备价格较为高昂,且需要不低的学习成本。
技术实现思路
1、基于此,有必要针对上述技术问题,提供一种能够低成本的基于python和capl语言的自动化uds刷写测试方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
2、第一方面,本申请提供了一种基于python和capl语言的自动化uds刷写测
3、编写功能接口并根据预设的测试需求生成对应的测试用例库;
4、搭建测试环境并获取对应的测试参数信息;
5、根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。
6、在其中一个实施例中,正常刷写测试包括:
7、将所述功能参数信息配置至功能接口;
8、运行所述测试脚本文件并监控测试进度;
9、当所述测试结束后,获取测试结果;
10、将测试结果与预设的期望结果进行比对并将所述比对结果输出。
11、在其中一个实施例中,故障注入测试包括:
12、将所述功能参数信息配置至功能接口;
13、运行所述测试脚本并通过功能接口获取总线刷写报文;
14、当检测到需要进行故障注入的报文时,通过功能接口执行故障注入操作;
15、当所述测试结束后,获取第一故障测试结果;
16、将第一故障测试结果与预设的期望结果进行比对并获取第一比对结果;
17、重新进行正常刷写测试并获取第二比对结果;
18、若第一比对结果与第二比对结果都与对应的期望结果相同,则输出与通过测试相关的提示信息;
19、否则,输出与不通过相关的提示信息。
20、在其中一个实施例中,编写功能接口包括:
21、获取桌面所有顶级窗口的句柄并放入列表;
22、根据句柄列表获取对应的进程id列表;使用进程id列表获取到对应的进程名列表;
23、从进程名列表中自动匹配到上位机软件的进程名并获得上位机软件对应的顶级句柄;
24、使用上位机的顶级句柄获取到上位机中各个功能组件的句柄,并通过句柄获取到功能组件;
25、基于所述功能组件编写功能接口。
26、在其中一个实施例中,编写功能接口包括:
27、调用modbus库函数通过串口发送通讯报文至程控继电器,所述通讯报文满足rs485协议;
28、程控继电器基于所述通讯报文控制端口的断开与闭合。
29、在其中一个实施例中,编写功能接口包括:
30、调用capl编写函数通过串口发送通讯报文至程控继电器,所述通讯报文满足rs485协议;
31、程控继电器基于所述通讯报文控制端口的断开与闭合。
32、第二方面,本申请还提供了一种基于python和capl语言的自动化uds刷写测试装置。装置包括:
33、功能接口编写模块,用于编写功能接口并根据预设的测试需求生成对应的测试用例库;
34、测试参数获取模块,用于搭建测试环境并获取对应的测试参数信息;
35、刷写测试运行模块,用于根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。
36、第三方面,本申请还提供了一种计算机设备。计算机设备包括存储器和处理器,存储器存储有计算机程序,处理器执行计算机程序时实现以下步骤:
37、编写功能接口并根据预设的测试需求生成对应的测试用例库;
38、搭建测试环境并获取对应的测试参数信息;
39、根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。
40、第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
41、编写功能接口并根据预设的测试需求生成对应的测试用例库;
42、搭建测试环境并获取对应的测试参数信息;
43、根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。
44、第五方面,本申请还提供了一种计算机程序产品。计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
45、编写功能接口并根据预设的测试需求生成对应的测试用例库;
46、搭建测试环境并获取对应的测试参数信息;
47、根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。
48、上述基于python和capl语言的自动化uds刷写测试方法、装置、计算机设备、存储介质和计算机程序产品,编写功能接口并根据预设的测试需求生成对应的测试用例库;搭建测试环境并获取对应的测试参数信息;根据测试需求中的测试模板筛选出与测试模板对应的测试用例并制作成测试脚本文件进行测试。本申请采用上述方法,本专利技术使用python软件,完成前期配置后可以一键自动化测试,无需学习操作界面;操作简单且易于执行;本专利技术软件方面仅使用了python软件和canoe软件,硬件方面仅使用cancasexl硬件、es581硬件和程控继电器硬件,无需其他的软硬件配合,也无需自主设计与研发配套的硬件;使用工具少且成本低;本专利技术仅需要搭建简单的测试环境,且通过简单配置即可兼容不同项目的上位机软件,无需上位机软件主动适配,也无需测试软件针对上位机进行适配;平台化程度较高且无需额外增加开发成本;本专利技术能自动分析中间数据并自动生成测试报告,筛选出错误项,无需人工处理数据;降低了人为因素导致的测试误差;本专利技术运行能减少无意义的重复劳动,解放人力,提高工作效率与精准度。
本文档来自技高网...【技术保护点】
1.一种基于Python和CAPL语言的自动化UDS刷写测试方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,所述测试包括正常刷写测试和故障注入测试,其特征在于,所述正常刷写测试包括:
3.根据权利要求2所述的方法,其特征在于,所述故障注入测试包括:
4.根据权利要求1所述的方法,所述功能接口其特征在于,所述编写功能接口包括:
5.根据权利要求1所述的方法,其特征在于,所述编写功能接口包括:
6.根据权利要求1所述的方法,其特征在于,所述编写功能接口包括:
7.一种基于Python和CAPL语言的自动化UDS刷写测试装置,其特征在于,所述装置包括:
8.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机程序产品
...【技术特征摘要】
1.一种基于python和capl语言的自动化uds刷写测试方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,所述测试包括正常刷写测试和故障注入测试,其特征在于,所述正常刷写测试包括:
3.根据权利要求2所述的方法,其特征在于,所述故障注入测试包括:
4.根据权利要求1所述的方法,所述功能接口其特征在于,所述编写功能接口包括:
5.根据权利要求1所述的方法,其特征在于,所述编写功能接口包括:
6.根据权利要求1所述的方法,其特征在于,所述编写功能接口包括:
...
【专利技术属性】
技术研发人员:臧润涛,刘钊,李少佳,余也乐,
申请(专利权)人:卓品智能科技无锡股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。