题目重点:以测试lead视角从需求风险到回归、发布门槛和监控,明确分工与缺陷修复闭环。
题意与假设
这道练习题保留了面经中值得训练的核心约束,并将需要澄清的条件单独列出。现场拿到变体时,先和面试官确认这些条件。
- 具体friends功能未给,训练以好友可见动态入口作虚构功能;实际需先确认用户故事、权限与成功指标。
- 测试lead负责协调证据和风险,不承诺单靠测试可证明零缺陷。
解题路线
- 把需求拆成角色、数据可见性、入口、状态和失败行为,确认已有friends功能哪些会被影响。先给核心不变量,例如非好友不可看到私密内容,再安排测试,不从“写多少case”起步。
- 任务分配按模块与风险而非均匀分页面:客户端交互/无障碍、服务API与权限、数据/缓存一致性、端到端、性能与监控分别有owner,另指定跨模块集成负责人,避免接口夹缝无人负责。
- 除新功能正常路径还做旧功能回归、权限/隐私、兼容/弱网、并发/缓存、性能和故障降级。单测、契约、集成与E2E各层有不同成本,重复覆盖要有目的。
- 发现缺陷先记录可复现步骤、版本、账号/关系数据、requestId和期望/实际,区分前端展示、接口返回、缓存或落库问题;最小化复现后按影响、可达性与阻断性定优先级。
- 修复需开发确认根因、测试重验、补防回归自动化并检查相邻影响;不能关闭ticket便视为上线完。发布前明确关键权限/主流程门槛,风险例外需有owner和修复计划。
- 渐进放量/feature flag与回滚方案降低未知风险;上线监测错误率、内容泄露、延迟和用户行为,分版本/实验组观察。隐私违规即使总体错误率低也应独立触发处置。
手动走一遍
用户取消好友关系后,新入口仍由旧缓存显示私密动态:客户端正确隐藏不足以证明服务端拒绝。测试同时请求API、检查撤权传播窗口,定位cache失效,再在相同关系变更路径补回归,灰度期间独立监控越权。
规模与取舍
矩阵按角色、关系、状态、设备与故障增长,优先高风险组合;E2E只留关键journey,监控按事件量和维度预算,避免无界指标标签。
易错点与追问
容易失分的边界
- 只测新按钮不测旧流程。
- 分工没有跨模块owner。
- 修复验证通过就跳过回归和发布监控。
继续深挖
- 如何定义release gate?
- 发生隐私问题如何关闭功能?
- 哪些测试适合自动化、哪些需探索?
