为什么需要SOVD
▪️远程诊断:允许技术人员或服务系统在不需要直接接触车辆的情况下,通过移动宽带网络远程访问车辆数据和控制系统。
▪️近端诊断:当技术人员在车辆附近时,可以通过有线或无线方式连接到车辆的SOVD服务器,进行诊断操作。
▪️车辆内部诊断:车辆内部的诊断任务可以独立于外部服务器或近场测试器运行,例如,车辆健康监测、预测性维护等。
▪️SOVD网关:为SOVD边缘节点,用于接收SOVD请求,使用mDNS进行设备的发现和连接,将其正确的分发到不同的终端。每个车辆中只有一个该组件。
▪️SOVD2UDS适配器:可将基于SOVD协议的诊断请求和数据转换为符合UDS协议的格式,反之亦然。该组件原生支持DoIP,且可扩展自定义TP。每个车辆中只有一个该组件。
▪️诊断管理器(AUTOSAR AP):为车辆内部适用于AUTOSAR AP应用的本地SOVD服务器,可通过ara::diag (C++) 接口实现SOVD的功能。该组件的数量取决于ECU/系统的数量。
▪️SOVD库:适用于不具备完整AUTOSAR环境的应用,可以使用该组件实现SOVD功能。该组件的数量取决于ECU/系统的数量。
可使用北汇定制化开发的Test Center软件完成自动化调用远程诊断服务器及车端SOVD接口。
▪️通过HTTP指令调用车端SOVD接口,观察SOVD2UDS适配器的表现是否符合预期。
▪️测试环境:系统级+实车级
▪️测试输入物:API文档+诊断数据库
▪️模拟UDS协议控制器的异常响应(否定响应或无响应),通过HTTP指令调用车端SOVD接口,观察SOVD2UDS适配器的表现是否符合预期。
▪️难点:逆向场景模拟
UDS控制器异常响应模拟:系统级SOVD测试台架环境下自动化实现总线/供电硬线故障注入、ECU总线信号无响应/否定响应等多种类型的逆向测试场景。
▪️测试环境:系统级
▪️测试输入物:API文档+诊断数据库
(1)逻辑定义模块(PAVELINK.Test Center):通过北汇定制化开发的Test Center可实现图形化测试用例编辑、测试用例管理及设备管理、测试任务安排以及测试任务执行等工作,同时通过定制化模块也可实现自动化调用远程诊断服务器及车端SOVD接口。
(2)逻辑转发模块(PAVELINK.Test Agent):通过北汇定制化开发的Test Agent可实现转发由上方Test Center下发的逻辑执行请求,包括CANoe工程调用,控制CANoe测试工程的自动运行,停止。
(3)数据库转换模块(PAVELINK.SOA-Converter):通过北汇定制化开发的SOA-Converter可实现将OpenAPI及诊断数据库(ODX及DEXT等格式)的文件格式转换,用于测试用例生成工具生成测试用例。
(4)测试用例自动生成工具:
①通过北汇定制化开发的测试用例自动生成工具,基于导入的数据库,可实现SOVD测试用例的自动生成。
②通过VECTOR的CANoe.Diva,基于OpenAPI,可实现测试用例的自动生成,并进行特定用例的手动修改,从而对外部和内部的SOVD API接口进行测试。
(5)测试执行软件(CANoe):基于VECTOR的CANoe软件,可实现包含报文仿真、电源控制、信号仿真、以及BOB控制等。
测试前置条件
▪️输入物:API及诊断数据库
输入物格式转换
▪️通过PAVELINK.SOA-Converter自动化完成输入物的格式转换,并将其输入到测试用例自动化生成工具
测试用例生成
▪️系统级SOVD测试用例:通过测试用例生成器解析输入物自动生成SOVD API测试用例、SOVD2UDS协议转换测试用例及SOVD2UDS逆向测试用例
▪️实车级SOVD测试用例:通过测试用例生成器解析输入物自动生成SOVD API测试用例
测试执行及测试管理
▪️测试用例输入到PAVELINK.Test Center,Test Center借助PAVELINK.Test Agent自动化调用CANoe、远程诊断服务器及车端SOVD接口进行测试执行,并根据测试结果生成测试报告