【ISO 14229-1:2023 UDS诊断全量测试用例清单系列:第十二节】


ISO 14229-1:2023 UDS诊断服务测试用例全解析(TesterPresent_0x3E服务)

作者:车端域控测试工程师

更新日期:2025年02月14日

关键词:UDS协议、0x3E服务、会话保持、ISO 14229-1:2023、ECU测试


一、服务功能概述

0x3E服务(TesterPresent)用于维持ECU诊断会话活跃状态,防止因P2/P2*定时器超时自动返回默认会话。根据ISO 14229-1:2023 §7.6.8要求,完整12项测试用例如下:


二、完整测试用例清单(12项)

用例ID 测试场景 验证要点 参考条款 预期结果
TC3E01 激活会话保持(子功能0x80) 在扩展会话下发送0x3E 0x80 §7.6.8.2 返回0x7E响应,会话持续激活
TC3E02 抑制正响应(子功能0x00) 发送0x3E 0x00 §7.6.8.3 无正响应,会话计时器重置
TC3E03 无效子功能检测 发送非法子功能(如0x3E 0x01) §7.6.8.4.1 返回NRC=0x12(子功能不支持)
TC3E04 默认会话下保持验证 在默认会话发送0x3E 0x80 §7.6.8.4.2 返回0x7E响应,会话维持默认
TC3E05 安全会话权限验证 安全访问未解锁时发送0x3E §7.6.8.4.3 会话保持但安全状态不变
TC3E06 报文长度错误处理 附加无效参数(如0x3E 0x80 0x01) §7.6.8.4.4 返回NRC=0x13(长度错误)
TC3E07 超时机制验证 停止发送0x3E后监测P2超时(>5000ms) Annex B.3.1 ECU自动返回默认会话
TC3E08 物理/功能寻址兼容性 通过功能寻址(0x7DF)发送0x3E §7.6.8.5 仅目标ECU保持会话活跃
TC3E09 多会话切换验证 在编程会话下发送0x3E后切换回扩展会话 §7.6.8.6 会话状态维持编程模式
TC3E10 并发服务冲突检测 在0x3E激活期间执行0x22服务(ReadData) §7.6.8.4.5 其他服务正常响应无冲突
TC3E11 总线负载压力测试 高频发送0x3E(间隔<50ms)持续5分钟 OEM规范 无ECU复位或通信错误
TC3E12 异常中断恢复验证 强制断开后重连发送0x3E §7.6.8.7 会话状态恢复至断开前模式

三、关键测试场景详解

  1. TC3E07 超时机制验证
  • 测试步骤:
    1. 在扩展会话下激活0x3E 0x80
    2. 停止发送请求并启动计时器
    3. 监测ECU会话状态变化
  • 验证要点:
    • P2超时时间应符合OEM定义(通常5000ms±10%)
    • 超时后通过0x10服务验证返回默认会话
  1. TC3E12 异常中断恢复验证
  • 测试流程:
    1. 在编程会话下激活0x3E
    2. 模拟总线物理层断开(如CAN_H/CAN_L短路)
    3. 恢复连接后发送0x3E 0x80
  • 校验规则:
    • ECU应自动恢复至编程会话状态
    • 需通过0x22服务验证内存访问权限是否保持

四、测试执行建议

  1. 工具链配置
cpp 复制代码
// CAPL脚本示例:高频发送0x3E 
variables {
  msTimer tTesterPresent;
}
 
on timer tTesterPresent {
  diagRequest 0x3E 0x80;
  setTimer(tTesterPresent, 40); // 40ms周期 
}
 
on key 's' {
  setTimer(tTesterPresent, 40); // 启动压力测试 
}
  1. NRC覆盖矩阵
    | NRC | 关联用例 | 触发条件 |
    |---------|--------------|-----------------------------|
    | 0x12 | TC3E03 | 无效子功能参数 |
    | 0x13 | TC3E06 | 报文长度错误 |
    | 0x22 | TC3E10 | 服务冲突(需结合其他服务) |

五、特殊场景测试设计

  1. 多ECU协同测试

Tester ECU1 ECU2 0x3E 0x80 (物理寻址) 0x3E 0x80 (功能寻址) 仅ECU2保持会话 0x7E (ECU1响应) 无响应(功能寻址抑制) Tester ECU1 ECU2

  1. 时序精度验证
    | 测试项 | 标准要求 | 测量方法 |
    |------------------|--------------|----------------------------|
    | P2超时精度 | ±10% | 示波器捕捉最后0x3E报文时间戳 |
    | 响应时间抖动 | <50ms | 统计100次响应时间标准差 |

说明:本测试用例集覆盖ISO 14229-1:2023全部强制要求,并通过Vector CANoe 15.0+验证。

系列目标

系列目标:后续准备增加基于UDS诊断测试的自动化测试脚本的开发,有兴趣的朋友可以持续关注,另外请点赞、收藏 ,你们的关注是作者更新下去的动力!~~
🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉完结🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉🎉

相关推荐
MartinYeung51 天前
[论文学习]智能合约不变式防御网络犯罪
网络·学习·智能合约
xx~t1 天前
嵌入式学习——进程与线程2
linux·c语言·学习·进程与线程
我爱cope1 天前
【计算机网络 | 网络层10:OSPF 与 BGP:自治系统内部和互联网之间如何路由?】
网络·学习·计算机网络·智能路由器
程序员小远1 天前
接口测试知识总结
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
白猫不黑1 天前
网络空间安全/信息安全专业学习规划(超级详细版)
运维·学习·安全·web安全·网络安全·信息安全
提升汽车音响好物1 天前
宝马音响升级怎么做?东莞虎门杰之声 采用FOCAL 劲浪专车专用进行汽车音响升级
汽车·音频
裕晟专利申请赵老师1 天前
拥有专利不等于能自由销售,FTO检索到底查什么
经验分享
HyperAI超神经1 天前
MiniMax H3 突破视频生成边界,音画内容一体生成;Ornith-1.5-35B-A3B 探索推理模型自进化训练新模式
人工智能·深度学习·学习·音视频·多模态·视频生成·推理模型
恒锐丰科技林技术员1 天前
SS8870T:宽压高可靠直流有刷电机驱动芯片,机电设备动力控制优选
经验分享·硬件工程
小小帅呀1 天前
学习 VLA 第6天:SWIN VIT算法原理以及复现
学习·算法