候选人面试分析:奇瑞-诊断
来源
- 转写文件:
奇瑞-诊断.txt - 候选人姓名:转写中无法确认真实姓名;不编造姓名。
- 备注:转写文本存在较多口语化、重复和断裂,部分英文缩写识别不完整(如“c v o”应为“HIL”,“b s k o”应为“BMS HIL”),但不影响对核心能力的判断。候选人自述经历与简历存在出入,需注意。
岗位方向
- 主要匹配:BMS HIL测试 / 诊断测试。
- 次要匹配:整车功能测试(偏三电)。
- 岗位适配判断:更适合按测试用例执行的BMS HIL诊断测试执行岗,不适合需要独立设计诊断测试策略、制定测试计划或主导问题分析的岗位。
整体结论
候选人具备1-2年左右的BMS HIL测试执行经验,主要工作内容为在台架上进行AC/DC充电、热管理及故障诊断的测试验证,能够使用CANoe和CAPL脚本进行基本的诊断报文收发、故障模拟和日志分析。对UDS诊断协议(ISO 14229)的基础服务分类、OBD与UDS的区别有概念性了解,能说出常规的诊断测试操作流程。
然而,候选人的回答暴露出明显的执行属性。当被问及AC/DC充电故障诊断与普通UDS诊断的区别时,候选人无法给出实质性回答,直接跳过。在描述测试流程时,多为工具操作步骤的罗列,缺乏对测试设计思路、测试策略、问题定位深度的阐述。整体表现符合一名初级测试执行工程师的水平,技术深度有限,独立设计和问题闭环能力存疑。考虑到其经历描述与简历存在不一致,且核心诊断测试设计能力未得到验证,建议作为初级执行岗位的备选,并需在后续面试中重点核实项目真实性和独立工作能力。
答得好的点
- 对UDS诊断协议(ISO 14229)的服务分类有基本了解,能正确说出诊断通信管理、数据传输、存储数据传输、输入输出控制、例行程序等几大类功能。
- 能清晰区分OBD诊断(基于ISO 15031,面向法规排放)和UDS诊断(基于ISO 14229,面向开发和供应商自定义)的应用场景和协议基础。
- 能大致描述使用CANoe进行诊断测试的基本流程:创建工程、加载DBC、配置波特率、导入诊断数据库、通过诊断控制台发送服务请求(如19服务读DTC、14服务清DTC)。
- 提到了使用CAPL脚本模拟传感器信号异常(如单体电压超限)来触发故障,并结合CANoe的Trace窗口分析诊断报文,具备基本的故障注入和报文分析思路。
- 在描述Bug记录时,提到了需要包含测试环境、操作步骤、预期结果和实际结果等关键要素,具备基本的测试报告意识。
薄弱风险
- 核心概念理解不清:当被直接问及“AC/DC充电故障诊断与普通UDS诊断有什么区别”时,候选人无法回答,直接跳过。这暴露了其对所测对象(充电诊断)的特殊性缺乏深入理解,可能仅是机械执行用例。
- 技术深度不足,停留在操作层面:对CANoe诊断测试的描述完全是工具操作步骤的罗列(创建工程、加载文件、发送ID),没有体现出对诊断测试设计、测试覆盖度、时序要求、负向测试用例设计的思考。
- 回答模式化,缺乏项目细节:所有回答都像是背诵教科书或工具手册,没有结合任何具体的项目实例。例如,在描述Bug定位时,未能举出一个实际遇到过的、有挑战性的诊断Bug及其闭环过程。
- 工具链能力单一且基础:仅展示了CANoe的基本诊断功能使用,对于更深入的CAPL编程能力(如编写复杂的诊断测试脚本、自动化测试框架)、其他诊断工具的使用经验均未体现。
- 问题闭环能力存疑:虽然提到了Bug提交和回归验证,但描述非常笼统。当面试官追问“如何定位和记录诊断相关bug”时,回答依然停留在工具操作层面,缺乏对问题根因分析、跨部门(如与软件开发)沟通协作的阐述。
- 经历真实性存在疑点:候选人自我介绍称在宁德时代做BMS HIL,但简历中未明确体现,且对具体项目名称含糊其辞,需在背景调查或后续面试中核实。
面试官考察点
- 项目真实性验证:通过询问最近一家公司及简历信息不符点,验证候选人工作经历的真实性。
- 诊断测试核心概念区分:通过对比AC/DC充电诊断与普通UDS诊断、OBD与UDS诊断的区别,考察候选人对所测对象和协议的理解深度。
- 协议基础掌握程度:通过询问ISO 14229服务分类,验证候选人对UDS协议基础的熟悉程度,而非仅会工具操作。
- 工具实操与测试流程:通过要求描述CANoe诊断测试的完整配置和执行过程,考察其工具使用的熟练度和测试流程的规范性。
- 问题定位与闭环能力:通过追问如何定位和记录诊断Bug,考察候选人在实际测试中发现问题、分析问题、记录问题并推动解决的能力。
- 测试报告规范性:通过询问提交报告的要素,考察候选人测试输出的专业性和完整性。
- 标准理解与应用:通过提及ISO 16212(应为ISO 16212或相关标准),考察候选人对诊断相关性能标准的了解及其对测试的影响。
证据摘录
- “呃,a c d c和和什么?嗯……好,这个不知道,我先过。”(当被问及AC/DC充电故障诊断与普通UDS诊断区别时的回答,直接暴露了知识盲区)
- “这些的话是先呃先用那个c o去创建一个工程嘛,去然后去加载一个b m s的呃d b c文件。然后再然后是的话是去配置它一个呃看通道的一个波特率,然后在那个诊断模块里面嘛去导入一个呃u d s诊断那个数据库。”(对CANoe诊断测试的描述完全是工具操作步骤)
- “然后仿真故障的话就是用那个呃开拓脚本去模拟一个传感器信号的异常。比如就呃就比如那个呃单体电压嘛,它超出那个预值的时候触发b m s去记录一个新故障码嘛。”(提到了用CAPL进行故障注入,但仅为基础操作)
- “记录bug的时候嘛,要呃写清那个测试的环境啊,还有那个呃呃操作步骤和那个预期结果和那个实际结果这边。”(对Bug记录要素的描述)
- “呃,简历里面我没我没有去写那个具体的一个是那个项呃项目项目的呃项目名称嘛,就是那个一直到就二二零六零二零二零年四月份的那个嘛b s k o。我主要是这家公司。”(对简历和经历不符的解释,含糊不清)
评级建议
- 建议评级:C+
- 推荐方向:BMS HIL诊断测试执行(需有明确的测试用例和指导)、测试用例执行、回归测试。
- 谨慎方向:诊断测试策略设计、测试计划制定、复杂问题主导分析、独立带项目。
- 面试推进建议:不建议直接通过。如岗位急缺初级执行人员,可作为备选,但必须由技术面试官进行一轮复试,重点补问项目细节、CAPL编程能力和问题闭环案例,以核实真实能力。同时,需HR核实其工作经历的真实性。
可补问问题
- 请举一个你实际测试中遇到的最复杂的诊断Bug,详细说明你是如何从发现、定位、分析根因,到最后推动开发解决并回归验证的完整过程。
- 在你提到的CAPL脚本模拟单体电压超限触发故障的例子中,请具体写出这段脚本的核心逻辑,以及你如何保证模拟的时序与实车一致?
- 对于AC/DC充电的故障诊断,比如绝缘故障或充电机通信超时,BMS的诊断策略和普通CAN通信故障的诊断策略在测试设计上会有什么不同?
- 你提到使用ISO 14229,那么对于0x19服务(读取DTC信息),它的不同子功能(如01, 02, 04, 06)分别用于什么场景?你在测试中如何验证BMS返回的DTC状态字节是正确的?
- 在HIL台架上,你如何模拟一个真实的物理故障(例如,一个CAN节点掉线),而不仅仅是发送一个信号值,来验证BMS的诊断响应?