面灵AI→

正浩创新嵌入式测试开发一面:覆盖率补齐、安全控制器用例与硬件基础

轮次
一面
时间
2026-10
来源
牛客网

《面试题目》

  1. 自我介绍。
  2. 你简历期望岗写的是嵌入式软件开发,为什么投测试岗?
  3. 后续职业规划往哪个方向走?
  4. 为什么 8 月中就从长川离职了?长川表现好不能直接转正吗?
  5. 覆盖率从 90% 提到 98%,剩下没覆盖的 8% 是什么内容?
  6. 那 8% 在其他环节有没有被覆盖到?测试部在用覆盖率工具吗?有没有推广过去?
  7. 双 Agent 里「写用例者不参与达标判定」——这是谁要求你这么做的?还是自己想的?
  8. 你做的单元测试和测试部做的测试,区别在哪里?
  9. 加热设备安全控制器如果让你设计测试用例,你会怎么设计?
  10. 你的项目都是自己做的还是和别人合作的?
  11. 精度漂移那个问题具体怎么协作解决的?
  12. 对电子电路了解吗?举一两个常见电路说下功能?
  13. 电感是干嘛的?二极管主要功能是什么?
  14. 示波器、功率分析仪这些仪器用过吗?示波器主要用哪些功能?

《参考解析》

为什么从开发转测试:不要说「开发太难」或「测试轻松」,要讲成能力匹配。可以落到三点:做开发时就习惯给模块补单测和边界用例,发现自己对「怎么证明它对」比「怎么把它写出来」更有兴趣;嵌入式产品的质量成本极高,一个控制逻辑的漏测可能直接变成硬件损坏或安全事故,测试开发能用工程手段把风险前移;测试开发既要写代码(框架、平台、自动化)又要懂系统和硬件,正好能复用开发能力,不是退而求其次。职业规划按「一年打基础、三年成体系」讲:先把公司产品线、测试流程和工具链吃透,再往上做自动化与持续集成、测试平台和数据度量。

离职原因与转正:这类问题面试官真正想确认的是「稳定性和说法是否自洽」。事实性回答即可:实习期结束、部门没有转正名额或转正流程没走通,想找更匹配嵌入式测试方向的机会。不要贬低前公司,也不要编造「业务调整」这种容易被追问穿的细节;如果确实表现好,可以补一句「主管愿意推荐,但编制卡住了」,把结论落在客观约束上。

覆盖率 90% 到 98%,剩下的 8% 是什么:先纠正一个口径——90% 到 98% 不是「补了 8 个点」,而是行覆盖、分支覆盖、条件覆盖中的哪一种?不同口径下未覆盖的代码完全不同。常见的未覆盖部分有四类:① 异常与防御分支(空指针、超时、通信失败、校验失败、硬件读回不一致);② 硬件相关路径(不同传感器型号、量程、校准参数、上电时序);③ 并发与时序(中断抢占、DMA 完成与主循环竞争、看门狗复位);④ 编译开关与未启用功能(调试宏、预留型号分支)。这些往往不是「测不到」,而是「不想在单元测试里造」——因为需要 mock 硬件或注入故障。剩下的 2% 可能是死代码、编译器生成的异常处理桩、或需要真实硬件才能进入的分支,应当逐个给出「不可达/由系统测试覆盖」的结论,而不是留一个笼统的数字。

覆盖率工具与推广:嵌入式 C 常用 gcov/lcov(宿主机单测)或目标板上的覆盖率采集(如 gcov 交叉编译 + 串口导出、或商用工具)。要能说出「工具只统计执行过的代码,不统计断言质量」——覆盖率高不等于测得好,所以还要看断言密度、变异测试、缺陷检出率。推广到测试部时,阻力通常不是工具而是流程:单元测试跑在开发环境、测试部拿不到可执行的构建;可以先在 CI 里固定产出覆盖率报告和趋势图,再把「新增代码覆盖率不低于某阈值」作为门禁,用数据说话,而不是要求别人改工作方式。

双 Agent 写用例与判定分离:这是很典型的「生成与评审分离」设计,目的是避免自己写自己判带来的确认偏差。谁提出的不重要,重要的是能讲清理由:生成 Agent 负责按需求与代码产出用例,判定 Agent 独立依据预期结果和覆盖率/变异结果评判,两者上下文隔离、提示词不同,降低「为了让结果通过而写用例」的倾向。追问「谁要求这么做」时如实回答即可(自己设计的就说自己设计的,并说明动机和效果),面试官更在意设计判断而不是归属。

单元测试与测试部的区别:单元测试是开发侧的白盒测试,针对函数/模块,跑在宿主或目标板上,依赖 mock,追求快速、可重复、能定位到具体代码行;测试部的测试偏系统级黑盒,从需求与用户场景出发,覆盖整机功能、接口、环境与可靠性,关注的是「产品能不能用」。两者不是替代关系:单测保证内部逻辑正确、回归成本低;系统测试保证集成后行为正确。测试开发的价值在于把两者的公共部分自动化、把缺陷左移。

安全控制器怎么设计用例:先明确安全目标与失效后果,再按「正常、边界、异常、故障注入」四层展开。正常路径验证加热启停、温度闭环、设定值生效;边界覆盖温度上下限、超调、传感器量程端点、采样周期抖动;异常覆盖传感器断线/短路/漂移、通信丢包、电源跌落、看门狗复位;故障注入要验证安全动作是否可靠——比如强行短接温度传感器、注入错误 ADC 值、拔掉执行器,确认系统能进入安全状态(切断加热、报警、锁定)而不是继续闭环。还要检查安全功能的独立性(安全逻辑是否和业务逻辑共用同一个任务/看门狗)、故障恢复后的状态机是否正确、以及长时间运行的漂移。方法上可以结合 FMEA 找失效模式,用 HIL 台架做自动化回归,关键安全用例必须可重复、可观测(日志、IO 状态、报警码)。

项目协作与精度漂移:用 STAR 讲:现象是长时间运行后测量值缓慢偏移;定位分三步——先排除传感器本身(用标准源/高精度表比对),再查采样与校准链路(参考电压温漂、ADC 增益误差、校准系数过期),最后看算法(滤波器的稳态误差、积分饱和)。协作上明确分工:硬件同事做温漂实验与器件替换,软件同事加温度补偿和定期自校准,测试负责构造长时运行与温变场景并给出回归基线。结论要落到「怎么防止再发生」:加开机自检、把校准参数纳入版本管理、在 CI 里保留长稳测试。

电感与二极管:电感是储能元件,电流不能突变,阻碍电流变化,常用于滤波(LC 滤波、去耦)、储能( buck/boost 变换器)、变压与隔离;关键参数是电感量、饱和电流、直流电阻。二极管具有单向导电性,主要功能是整流、续流(感性负载关断时为电流提供回路,保护开关管)、稳压(齐纳)、钳位与防反接;关键参数是正向压降、反向耐压、恢复时间。面试官问这些不是要背书,而是看你能否把器件特性和实际电路(电源、驱动、保护)联系起来。

示波器的主要功能:基础是看波形——垂直档位与偏置、水平时基、触发电平与触发方式(边沿、脉宽、斜率、视频、串行协议);进阶功能包括自动测量(频率、占空比、上升时间、峰峰值)、光标测量、数学运算(加减乘除、FFT 看频域)、协议解码(I2C、SPI、UART、CAN)、余辉与分段存储抓偶发事件、探头衰减与差分探头。功率分析仪则用于测电压、电流、功率、功率因数与效率,常配分流器或电流探头。回答时补一句「先确认带宽和探头衰减是否匹配被测信号」,这是实际调试里最容易踩的坑。