传音控股|测试开发秋招一面

  • 日期:2026-10-15(面试日期)
  • 企业与岗位:传音控股|测试开发秋招一面
  • 适用层级:校招/有自动化和Agent项目经历的测开候选人

本篇为社区对用户分享面经的整理汇编,旨在帮助求职者了解面试考察方向。问题部分力求忠实还原原帖问答脉络;「参考答案 / 复盘思路」为整理方结合工程实践原创补充,仅供交流参考,不代表官方标准答案。

面试问题与参考答案

1. 交流环节:自我介绍

参考答案 / 复盘思路

建议用一分钟交代技术栈、最近一段测开经历、自己真正负责的模块和可量化结果。不要把团队成果全部归为个人,追问到代码、日志和测试数据时要能解释清楚。项目背景、职责、技术方案、验证证据依次说,比泛泛强调学习能力更可信。

2. 问题:介绍下实习做的测开工作?

参考答案 / 复盘思路

按需求输入、测试设计、框架实现、执行与缺陷闭环说明。举一个真实功能:怎样构造数据、定位接口、做断言、接入流水线,以及最终发现了什么缺陷。若参与的是已有框架维护,应区分复用和新增部分,并用运行记录、PR或测试报告证明。

进一步准备一份可复现的演示:固定输入数据、展示一次失败断言,再用提交记录说明修复。若指标是回归效率提升,必须给出同等用例范围下的前后耗时,而不是只说自动化覆盖率提高。

3. 问题:定时任务这个功能,自动化怎么设计测试用例?

参考答案 / 复盘思路

先区分一次性、周期性和补偿任务,覆盖触发时区、cron边界、跨日和夏令时、暂停恢复、并发触发与重复投递。测试时用可控时钟替代长时间等待,记录任务ID、计划时间、实际执行时间及幂等键。断言不能只看HTTP成功,还要核对任务副作用、失败重试次数、超时告警与补偿后的最终状态。

例如把“每分钟执行”配置成可注入的测试时钟,分别验证23:59跨日、任务执行超过一个周期、同一任务被两个Worker同时抢占的结果;用唯一任务键或租约机制判断是否重复产生副作用。

4. 问题:Agent记忆功能怎么测试?主动记忆、自动记忆分别怎么测?自动记忆触发条件是什么?

参考答案 / 复盘思路

主动记忆要验证显式保存、编辑、删除与召回;自动记忆则用对照会话验证触发阈值、提取准确率和错误记忆抑制。设计跨会话、跨用户、冲突事实、过期信息和隐私删除用例。评估不仅看是否命中,还看错误召回率、证据来源及对后续决策的影响;用trace把写入、索引、召回和最终回答串起来。

可以设计A用户记住偏好、B用户问同一问题的隔离实验;再让A更改偏好并追问旧信息,检查旧记忆是否失效。测试集需要包含“应该忘记”的负例,避免只评估记住了多少。

5. 问题:Subagent隔离环境怎么测试?工具、Prompt继承逻辑?

参考答案 / 复盘思路

建立父子Agent的权限矩阵:哪些工具允许按需授予,哪些上下文可继承,哪些敏感数据必须隔离。分别验证子任务创建、失败重试、上下文摘要、工具调用授权和退出清理。通过trace与审计日志确认实际工具权限,不以模型口头声称有权限为准;还要覆盖并发子Agent之间的状态串扰和越权访问。

尤其要把“模型没有调用工具”和“工具层拒绝越权”分开验证:前者是行为倾向,后者才是权限保障。父任务取消时还要检查子任务是否停止计费、释放资源,防止幽灵执行。

6. 问题:Playwright如何实现VSCode插件自动化,CDP协议在这里起什么作用?

参考答案 / 复盘思路

先明确VSCode是Electron桌面应用,Webview、扩展宿主和原生界面不一定能由同一浏览器上下文覆盖。对可调试的Webview,可通过调试端口接入CDP定位DOM、监听网络和截图;对扩展命令、文件系统及宿主侧行为,需结合VSCode扩展测试工具与进程日志。CDP是浏览器调试协议,不是通用桌面自动化接口。

还应确认测试运行时的扩展ID、VSCode版本和Webview隔离策略;不同版本可能导致调试端口或DOM结构变化。失败时同时留存Webview网络日志与扩展宿主日志,避免只凭截图定位。

7. 问题:讲一讲React,解决什么问题?

参考答案 / 复盘思路

React通过组件化与声明式状态更新组织复杂UI,核心不是“让页面更快”,而是使状态到视图的关系可维护。测试要关注受控输入、异步渲染、组件重挂载、列表key和副作用清理。写UI自动化时优先按用户可见语义定位,并等待业务条件而非固定sleep,避免把React重渲染误判为接口故障。

例如一个按钮点击后触发两次异步状态更新,脚本应该等待最终业务状态而不是等待某个CSS类名瞬时出现。测试可利用React Testing Library验证组件语义,再由E2E确认跨服务行为。

8. 问题:Workflow工作流和大模型主控模式区别?

参考答案 / 复盘思路

Workflow由预设节点与条件分支决定执行顺序,优势是可预测、易回放和审计;模型主控模式由LLM动态选择下一步工具,适合开放任务但更易出现路径漂移。测试前者重分支覆盖与状态转换,后者重工具选择正确率、预算上限、终止条件和失败恢复。混合架构可让模型做决策、关键动作交给确定性流程兜底。

给同一任务分别做正常路径、工具超时、错误工具选择与人工中断四组对照。记录每条trace的路径长度、工具调用次数和最终结果,才能比较两种编排方式的稳定性与成本。

9. 问题:Skill技能模块如何做测试,模型评测怎么做?SWE-bench、LoCoMo评测集了解吗?

参考答案 / 复盘思路

先把Skill的输入约束、触发条件、工具权限、输出格式写成可执行契约,再用正例、近邻误触发、参数缺失和权限拒绝做回归。模型评测分离任务成功率、步骤成本、证据可追溯性与风险违规率。SWE-bench主要评估真实软件仓库修复任务,LoCoMo侧重长对话记忆能力;二者不能直接替代本业务的验收集。

SWE-bench的成功标准偏向代码补丁通过测试,LoCoMo偏向长时记忆问答;若测的是“技能是否在正确时机调用”,还需要单独标注应调用与不应调用样本,计算误触发与漏触发。

10. 问题:成熟框架与自研脚手架怎么权衡?

参考答案 / 复盘思路

先算总拥有成本:维护人员、生态插件、升级兼容、学习成本、CI接入与问题定位。若需求主要是常见Web/API自动化,优先成熟框架并做轻量封装;只有在特殊协议、复杂设备控制或确有不可满足的扩展需求时才考虑自研。可以用一条核心业务链路做POC,比对稳定性、执行时长和维护工时后决策。

评估时最好明确退出条件:如果自研模块三个月维护工时持续高于成熟方案、且没有关键业务收益,应考虑回迁。不要把“技术自由度高”当成足以覆盖人力和故障成本的理由。

11. 问题:Agent Harness是什么?

参考答案 / 复盘思路

Harness可理解为包围模型的执行与控制层:管理提示、上下文、工具调用、状态、权限、重试、预算、日志及评测接口。它不是某一个模型,也不等于单条Prompt。测开可从任务生命周期验证:输入是否被正确装配、工具调用是否受控、失败是否能恢复、证据是否能回放,最终结果是否满足业务验收标准。

例如Agent写文件的任务,可逐步检查规划、授权、执行、文件内容校验和失败回滚。即便最终文件正确,也要检查是否调用了未授权工具或重复执行了不可逆动作。

延伸思考(社区补充)

如果记忆写入成功但检索到的是旧版本,如何设计跨会话回归?如果Subagent的工具权限被动态撤销,正在运行的任务应该怎样中止并留下审计证据?