针对新款车型,OEM会提出新车型的诊断需求,形成诊断需求规范。车内控制器由不同供应商提供。供应商根据需求规范来完成其功能实现。功能实现是否正确需要进行诊断测试验证。
测试目的:校验控制器关于诊断功能是否是按照需求规范定义的方式实现。
为了保证从需求提出-功能实现-后期测试整个流程中数据的正确性和一致性,诊断数据描述内容通过诊断数据库(CDD&PDX)为载体来贯穿整个全流程。
测试实现方式有:
手动测试:基于需求规范,提炼出测试规范,再基于测试规范,编写测试用例。基于测试用例一步一步手动测试并记录测试结果
半自动化测试:基于测试规范编写测试脚本,将编写好的测试工程加载到执行软件中自动化运行。所谓半自动化就是手动编写测试脚本,自动化运行测试脚本
全自动测试:将诊断描述内容,如数据库,加载到对应的测试用例生成工具中(如Vector公司CANoe.DiVa),自动化生成测试用例,并将生成的测试工程加载到执行软件自动化运行测试用例
本文分析手工测试相关操作步骤。
一、无诊断数据库测试验证
应用场景:被测项目中,OEM未释放对应的诊断数据库CDD或者ODX文件(ODX打包格式是PDX),测试工程师所在公司没有编辑诊断数据库的工具(CANdelaStudio)。这时候需要对ECU进行手动诊断测试,步骤如下:
1、在CANoe中新建BasicDiagnostic工程:PC端打开CANoe工具,新建CANoe工程如下图:
2、在诊断窗口添加BasicDiagnosticDescription(UDS)选项,使用CANoe工具内嵌的UDS入口,具体操作如下图:
3、在添加好BasicDiagnosticDescription(UDS)选项后,会有对应的交互界面。在此处设置请求ID和响应ID、TP相关参数、加载解锁所需dll文件以及其他时间参数。
4、新建需要的测试内容:在CANoe中,选择BasicDiagnostic,并创建自己需要的服务。
以Service10为例,配置子服务的Req和Res:
5、将创建好的服务同步到诊断控制台(DiagnosticConsole),使用接口卡连接ECU,手动发送诊断请求测试验证即可。
二、使用数据库进行测试验证
实际项目时,车厂或者Tier1会输入CDD&PDX文件,集成所有用到的诊断命令。在有诊断数据库CDD&PDX文件情况下,测试操作步骤如下:
1、在CANoe中加载数据库
2、导入配置如下,不需要修改:
3、cdd导入后,Diagnosticconsole中已经有了诊断命令,手动发送诊断帧的方式测试验证即可。
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群: 759968159,里面有各种测试开发资料和技术可以一起交流哦。
最后: 下方这份完整的软件测试视频教程已经整理上传完成,需要的朋友们可以自行领取【保证100%免费】
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。