腾讯测试怎么准备

更新于 2026-09-02 · 面试易

腾讯测试面试常问 IM:重复、乱序、未读、多端。这是正确性,不是点点点。

五题覆盖发送、未读、多端、弱网和事故。用你测过的聊天或同步来答。

腾讯怎么面测试

面试阶段与知识点

第一批不把每个阶段拆成独立 URL,避免程序化重复页。阶段对应下面的题,练完再用模拟面试串起来。

值得开口练的题

每题给考察点、思路、结构化参考答案和追问。参考答案用来组织语言,面试时必须换成你自己的项目事实。

如何测「消息不重复不丢失」?

难度 困难 · 出现频率 高 · 质量保障

考察点

  • 消息 ID 对账
  • 乱序与重试
  • 弱网场景

回答思路

我会以消息唯一 ID 为主线设计对账用例,覆盖发送重试、乱序到达和弱网恢复,用双端日志证明不丢不重。

结构化参考答案

  1. 构造连发、断网重发、杀进程恢复等路径,记录每条消息的 clientMsgId 与服务端 seq,断言最终会话里各出现一次。
  2. 模拟乱序到达:先发后到的包、重复推送的包,验证客户端去重逻辑和展示顺序符合产品规则。
  3. 弱网下断言:发送失败有明确状态、恢复后可补发或拉取离线消息,不会出现空白气泡或重复气泡。
  4. 收口交付对账脚本或查表方法、抽样比例和仍建议人工验证的群聊扇出场景。

面试官可能追问

  • 消息 ID 对账你会如何实现自动化?
  • 撤回消息的正确性你会如何单独设计用例?
  • 群消息扇出量大时,你如何抽样验证不丢不重?

用这道题开始模拟面试

未读红点多入口不一致,你如何定位?

难度 中等 · 出现频率 高 · 项目深挖

考察点

  • 入口枚举
  • 已读时序
  • 缓存与同步

回答思路

我会先枚举所有未读入口,固定已读操作顺序后再对比各入口计数,逐层排查是缓存未清还是同步包未生效。

结构化参考答案

  1. 列出会话列表角标、Tab 总未读、消息详情页和推送摘要等入口,定义「全读清」的标准操作序列。
  2. 执行已读操作后等待同步上限,再截图各入口数值;若不一致,清本地缓存后重登对比是否仍复现。
  3. 抓同步包或调试日志,看已读回执是否上报成功、服务端是否广播、其他端是否收到减未读事件。
  4. 定位到层级后补回归用例,并加监控或自动化巡检防止同类入口再次漂移。

面试官可能追问

  • 免打扰会话的未读是否应计入 Tab 总红点?
  • 修复后你会如何设计多入口未读的回归策略?
  • 端上乐观减未读时,你如何验证最终与服务端一致?

用这道题开始模拟面试

手机已读网页未读,测试步骤怎么写?

难度 中等 · 出现频率 中 · 基础知识

考察点

  • 操作顺序
  • 同步等待
  • 断言校准

回答思路

我会固定双端登录、手机先已读的操作顺序,设置合理同步等待上限,断言网页端在窗口内校准而非要求瞬时一致。

结构化参考答案

  1. 准备同一账号的手机端与 Web 端,先确保两端会话列表初始未读数一致,记录基准截图。
  2. 在手机端打开会话并触发已读,记录操作时间戳;Web 端保持前台或后台状态各测一轮。
  3. Web 端在约定上限内轮询或监听同步事件,断言红点消失、未读数归零;超时则判失败并抓双端日志。
  4. 步骤中注明账号隔离、网络环境和重试规则,避免偶发同步延迟被误判为通过。

面试官可能追问

  • 同步超过等待上限,你会判失败还是允许重试?
  • 多端联测时如何避免测试账号互相污染?
  • 一端长期离线后再上线,未读校准你会如何验证?

用这道题开始模拟面试

弱网发送中杀进程,恢复后你断言什么?

难度 中等 · 出现频率 中 · 编码与实现

考察点

  • 草稿保留
  • 状态恢复
  • 去重发送

回答思路

我会在弱网发送中途杀进程,恢复后断言草稿或发送中状态仍在、用户可确认重发,且服务端去重不会产生重复气泡。

结构化参考答案

  1. 弱网下发起文本或图片发送,在进度条中途 force-stop 应用,重启后检查输入框与会话中的中间态展示。
  2. 断言:内容未丢失、状态可理解(发送中/失败可重试),用户主动重发前不会自动双发。
  3. 对照服务端消息表或调试接口,确认同一 clientMsgId 仅入库一条;若已有半传图片,续传或失败提示符合规则。
  4. 补充杀进程时机矩阵(10%/50%/90% 进度)和不同网络档位的组合,纳入回归集。

面试官可能追问

  • 你会用什么方式稳定模拟「发送中途杀进程」?
  • 图片半传失败时,会话里应如何展示才不算缺陷?
  • 如何抓取并证明没有出现重复消息气泡?

用这道题开始模拟面试

误踢导致收不到消息,测试在复盘里提供什么证据?

难度 入门 · 出现频率 中 · 行为与协作

考察点

  • 时间线
  • 连接日志
  • 影响面估算

回答思路

我会整理事故时间线、连接与踢线日志和影响面数据,客观呈现测试侧能提供的证据,不做人身评价。

结构化参考答案

  1. 按分钟级梳理:首次告警、峰值、恢复时间和各阶段采取的止血动作,标注数据来源。
  2. 提供抽样用户的连接日志、心跳中断和重连失败模式,说明与「误踢」策略或配置变更的关联假设。
  3. 估算影响用户数、消息延迟区间和未读堆积规模,引用监控看板或离线统计而非主观猜测。
  4. 附上事后补上的防护用例、巡检项和回归结果,说明如何避免同类连接策略再次无测上线。

面试官可能追问

  • 影响面很大但日志不全时,你如何协助估算受影响用户范围?
  • 复盘讨论容易互相推责,测试如何只陈述事实?
  • 这类事故沉淀的防护用例,你会如何纳入日常回归?

用这道题开始模拟面试

和岗位、模拟面试一起用

资料管理里保存目标岗位 JD,模拟面试会按简历出题。点题目下的按钮会把本题带进模拟开场,仍需先绑定简历与岗位。

用模拟面试练腾讯测试