支付和交易的分布式一致性测试你会怎么做?
👔 Raina面试官: 支付和交易涉及分布式一致性,你会怎么测?
🙋 候选人:
- 不追求测分布式理论,而是测业务最终一致 + 异常可恢复 + 无静默丢单。
- 手段一:故障注入——在扣库存、创支付单、写账务之间 kill 服务或断网,恢复后跑补偿任务,断言订单/库存/支付三方对账平。手段二:消息重复/乱序/延迟——MQ 重放,验证幂等键生效。手段三:对账兜底——故意制造掉单,看 T+1 对账能否发现并触发补单。
- 观测:每笔交易有全局 traceId,能串起 order → payment → account 日志。测试断言不只是接口 200,还要查 DB 各表记录数和金额汇总。
👔 Raina面试官: 需要懂 TCC、Saga 才能测吗?
🙋 候选人:
- 要懂概念和项目用的方案,不必写框架。
- 知道你们用的是本地消息表、TCC 还是 Saga,才能设计对的故障点。测试重点是验证补偿逻辑和人工介入流程,而不是实现分布式事务算法。
用户登录注册(手机验证码、OAuth)测试要点有哪些?
👔 Raina面试官: 登录注册——手机验证码、OAuth 这些,测试要点有哪些?
🙋 候选人:
- 分账密、验证码、第三方 OAuth三条线,安全性和体验都要覆盖。
- 验证码:长度/格式校验、过期时间、错误次数锁定、重发间隔、同一手机号多设备、国际区号。注册:手机号已存在、注销后重注册、协议勾选、弱密码策略。OAuth:微信/Apple/Google 授权流程、取消授权、token 过期刷新、绑定已有账号 vs 新建账号、解绑后再绑。
- 安全 P0:验证码不可爆破(限流)、不可在响应里泄露、session 固定攻击、登出后 token 失效、多端踢下线策略。合规:隐私协议版本记录、未成年人注册拦截。
👔 Raina面试官: OAuth 测试环境回调地址不好配怎么办?
🙋 候选人:
- 用测试环境专用 redirect URI + 内网穿透或 Mock OAuth 服务。
- Mock 服务返回固定 openId 做回归;发版前在沙箱走一遍真实授权。重点断言的是回调后本系统的用户创建/绑定逻辑,不是测腾讯/Google 的页面。
内容发布 / 审核流程(UGC)测试关注点是什么?
👔 Raina面试官: UGC 内容发布和审核流程,测试关注点是什么?
🙋 候选人:
- UGC 测的是发布链路 + 审核策略 + 合规兜底,比普功能多一层内容和风控。
- 发布链路:文本/图片/视频上传、草稿、定时发布、编辑后再审、删除与恢复。审核:机审命中敏感词/涉黄涉政、人审队列、审核通过/拒绝/限流、申诉流程。状态机:待审、可见、仅自己可见、下架、封禁。
- 还要测误杀和漏放:正常内容不被误拦,变体敏感词(谐音、拆字)能被识别。并发:同一用户高频发帖触发频控。审核结果变更后,CDN 缓存和搜索索引是否同步更新。
👔 Raina面试官: 机审结果不好断言怎么办?
🙋 候选人:
- 维护分级测试语料库:明确应过、应拦、灰区三类,定期回归。
- 灰区用抽样人工标注校准,不追求 100% 自动化断言。线上用 shadow 模式对比新旧策略 diff,测试环境用固定 seed 减少随机性。
搜索推荐结果的准确性、排序、去重怎么测?
👔 Raina面试官: 搜索推荐的准确性、排序、去重,你怎么测?
🙋 候选人:
- 搜索推荐和传统功能测试不同,要指标 + 抽样 + 竞品对比结合。
- 准确性:准备 query-期望结果集(Golden Set),看 Top-K 命中率和 nDCG。排序:同一 query 下,高相关商品是否在靠前位置;价格、销量、个性化权重变更后排序是否可解释。去重:同 SPU 不同 SKU 折叠、已下架商品不出现、重复店铺不刷屏。
- 边界:空 query、超长 query、特殊字符、无结果时的推荐兜底。AB 实验时测试负责基线回归——策略上线不能导致主路径可用性下降或明显劣化。
👔 Raina面试官: 个性化推荐每个人不一样,怎么写用例?
🙋 候选人:
- 固定测试账号画像和种子数据,断言对该画像合理而非唯一正确答案。
- 比如常买母婴的用户搜奶粉,Top3 应含母婴类目——用类目/品牌规则断言,不断言具体 SKU 排名。同时监控多样性:不能 10 条全是同一店铺。
导出 Excel / PDF 功能有哪些常见测试点?
👔 Raina面试官: 导出 Excel、PDF 功能,常见测试点有哪些?
🙋 候选人:
- 导出功能容易漏测,我按数据、格式、性能、权限四维检查。
- 数据:导出内容与页面/筛选条件一致、合计行正确、空列表、大数据量(1 万+ 行)、特殊字符(逗号、换行、emoji)、科学计数法手机号不被 Excel 改乱。格式:表头、列宽、日期格式、多 sheet、PDF 分页不乱、中文不乱码。性能:超量导出是异步还是超时、进度提示、重复点击防重。权限:无权限字段脱敏或不可导出、审计日志记录谁导出了什么。
- 安全:导出链接是否带 token、过期失效、能否遍历他人数据。Excel 宏和 PDF 脚本注入也要留意。
👔 Raina面试官: 自动化怎么验 Excel 内容?
🙋 候选人:
- 用openpyxl/pandas 解析对比期望 CSV 快照,或 hash 对比关键列。
- 全文件 byte 对比不可靠(时间戳元数据会变),断言行数、表头、抽样几行数据即可。PDF 可抽文本层对比或用视觉回归工具。
