【ISO14229-1:2023UDS诊断全量测试用例清单系列:第九节】
- 开源代码
- 2025-09-06 12:51:01

ISO 14229-1:2023 UDS诊断服务测试用例全解析(TransferData0x36服务)
作者:车端域控测试工程师 更新日期:2025-02-13 关键词:UDS协议、0x36服务、TransferData、ISO 14229-1:2023、ECU测试
一、服务功能概述 0x36服务(TransferData)用于在客户端与服务器之间传输数据块,需配合0x34(RequestDownload)或0x35(RequestUpload)服务使用。根据ISO 14229-1 §7.4.9要求,完整15项测试用例如下:
二、完整测试用例清单(15项)
用例ID测试场景验证要点参考条款预期结果TC36-001标准数据传输流程按协商的MaxBlockLength发送有效数据块§7.4.9.2返回0x76+确认码TC36-002无效块序列计数器(BSC)发送跳号或重复的BSC(如0x01→0x03)§7.4.9.3.1返回NRC=0x24(顺序错误)TC36-003数据长度超过MaxBlockLength发送数据长度超过协商值(如512B→513B)§7.4.9.3.2返回NRC=0x31(请求越界)TC36-004安全访问未解锁时传输未执行0x27服务直接发送数据块§7.4.9.3.3返回NRC=0x33(安全拒绝)TC36-005跨会话权限验证在默认会话下发送需扩展会话的传输请求§7.4.9.3.4返回NRC=0x7E(服务不支持)TC36-006块序列计数器溢出处理BSC从0xFF递增后重置为0x01§7.4.9.3.5正常接收并更新内存TC36-007传输中断后重传相同块重传相同BSC的数据块(如BSC=0x02)§7.4.9.3.6立即返回0x76,不重复写入TC36-008数据校验失败处理注入CRC错误或校验和不匹配的数据Annex B.4.1返回NRC=0x71(传输挂起)TC36-009写入受保护内存区域尝试写入Bootloader或校准保护区OEM规范返回NRC=0x31(请求越界)TC36-010无效传输模式参数使用未在0x34/0x35中协商的传输模式§7.4.9.3.7返回NRC=0x12(参数错误)TC36-011多块连续传输完整性连续发送10个数据块(BSC=0x01~0x0A)§7.4.9.3.8全部接收且内存数据一致TC36-012混合传输方向冲突在下载过程中穿插上传请求§7.4.9.3.9返回NRC=0x24(顺序错误)TC36-013传输超时恢复机制客户端超时后重传未完成块§7.4.9.4服务器清除状态,需重新初始化TC36-014电压波动容错测试传输期间模拟±10% VDD波动ISO 16750-2数据完整且无内存损坏TC36-015最大数据块压力测试发送MaxBlockLength=4096B的极限数据块OEM压力测试规范成功接收并写入内存三、关键测试场景详解
TC36-007 传输中断后重传相同块 测试步骤: 发送BSC=0x02的数据块并收到0x76响应再次发送相同BSC=0x02的数据块 验证要点: 服务器应识别重复BSC并立即返回0x76内存数据不得被重复写入(通过校验工具验证) TC36-011 多块连续传输完整性 测试流程: 初始化0x34服务(MaxBlockLength=256B)连续发送10个数据块(BSC=0x01~0x0A)使用0x22服务读取目标内存区域校验数据 校验规则: 内存数据应与发送的二进制流完全一致块顺序不得错位(可通过预置标记字节验证)说明:本测试用例集已在dSPACE SCALEXIO平台完成验证,适用于符合ISO 14229-1:2023的ECU开发。
系列目标系列目标:后续准备增加基于UDS诊断测试的自动化测试脚本的开发,有兴趣的朋友可以持续关注,另外请点赞、收藏 ,你们的关注是作者更新下去的动力!~~ 🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉完结🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉
【ISO14229-1:2023UDS诊断全量测试用例清单系列:第九节】由讯客互联开源代码栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“【ISO14229-1:2023UDS诊断全量测试用例清单系列:第九节】”