微信红包发送-支付测试点(面试经典)
一、基础功能测试
1. 正常发送流程
- 红包类型验证
- 普通红包:固定金额,单人领取 → 金额与数量校验(用户单独发送场景)
- 拼手气红包:总金额随机分配 → 总金额≥0.01元,单笔最大金额≤200元
- 支付流程
- 支付方式:零钱、银行卡、信用卡(需支持免密支付)
- 发送成功:接收方通知(聊天窗口红点提示)、发送记录显示“已发送”
2. 金额与数量校验
- 金额边界:单红包最低0.01元,最高200元(普通红包);群红包总金额最高2万元
- 数量限制:群红包最多可发100个(需校验群成员数≥红包个数)
二、网络与中断场景测试
1. 网络适应性
- 弱网场景
- 发送时网络中断 → 恢复后自动重试支付(支付次数根据产品需求而定),失败可能需要保存发送记录并且连接之后需要进行提醒继续发送
- 领取红包时断网 → 恢复后可重新点击领取
- 网络切换
- 支付过程中切换网络(Wi-Fi→数据) → 支付流程不中断
- 支付过程中切换网络(数据→Wi-Fi) → 支付流程不中断
- 这里还需要添加低带宽,低延迟,网络不稳定等情况
2. 中断恢复机制
- 支付中断
- 支付密码输入时锁屏/切换应用 → 返回后需重新验证支付密码
- 领取中断
- 红包拆开动画中退出聊天 → 重新进入后可继续领取
- 其他场景
- app场景需要添加消息推送和交叉事件
三、性能与压力测试
1. 资源消耗
- 支付性能
- 支付接口响应时间≤1秒(95%场景),失败率<0.1%
- 高并发场景:1秒内1000人同时发送红包 → 服务端无超时或丢单
2. 压力场景
- 高频发送
- 同一用户连续发送10个红包 → 触发风控提示(如“操作频繁,请稍后再试”)
- 群红包领取
- 100人同时抢红包 → 金额分配正确,无重复领取或金额错误
四、兼容性测试
1. 设备与系统覆盖
- 主流机型
- iOS、Android、鸿蒙
- 折叠屏、平板分屏模式下红包弹窗适配
- 微信版本
- 当前最新版及前两版本,验证跨版本收发兼容性
2. 支付方式兼容性
- 不同银行APP跳转支付(如招行、工行)、第三方支付(如云闪付)
五、异常与边界测试
1. 异常处理
- 支付异常
- 零钱/银行卡余额不足 → 提示“余额不足,请更换支付方式”
- 支付密码错误次数超限 → 冻结支付功能并引导找回密码
- 红包状态异常
- 过期红包(24小时未领) → 自动退款至发送方零钱,通知发送方
- 重复领取 → 提示“已领取过此红包”
- 群红包存在退出群聊后的红包状态
2. 边界场景
- 发送0.01元红包 → 接收方成功领取且零钱到账
- 群红包发送数量=群成员数 → 所有人可领取且无剩余
六、安全与权限测试
1. 支付安全
- 权限管控
- 支付密码/指纹/面容识别验证 → 禁用生物识别时强制密码输入
- 异地登录发送红包 → 触发安全验证(短信/人脸)
- 防刷机制
- 短时高频发送红包 → 触发风控拦截(如“存在风险,暂不可用”)
2. 数据安全
- 红包记录本地加密存储
- 抓包验证支付接口是否使用HTTPS加密,防篡改
七、用户体验优化
1. 交互设计
- 发送流程
- 金额输入键盘自动切换为数字键盘,支持快速输入(如“200”快捷按钮)
- 红包祝福语长度限制(如20字),超限时提示
- 领取反馈
- 领取后显示金额排名(拼手气红包)、动画效果流畅
2. 辅助功能
- 视力障碍用户通过VoiceOver/TalkBack操作红包按钮
- 红包记录页支持按时间/类型筛选
八、自动化与监控
1. 自动化覆盖
- 核心用例自动化
- 使用Appium+Python脚本覆盖“发送→领取→退款”流程,集成支付密码输入
- 模拟弱网/中断场景(如ADB断网、杀进程)
- 云测试平台
- 覆盖主流机型,每日执行核心用例
2. 线上监控
- 关键指标埋点
- 红包发送成功率、支付失败原因分布、平均领取耗时
- 风控拦截率、退款率(异常阈值:退款率>5%触发告警)
九、灰度发布策略
- 分阶段发布
- 首批5%用户灰度(覆盖常用支付方式的用户)
- 监控指标:支付失败率(<0.5%)、风控误拦截率(<0.01%)
- A/B测试
- 对比新旧版本红包发送转化率(如“红包按钮点击→成功发送”转化率)
十、风险预案
- 资金安全兜底
- 支付成功但红包未发送 → 自动退款或人工补单
- 红包金额分配错误 → 紧急冻结相关红包并补偿用户
- 回滚机制
- 若新版本导致群红包崩溃,1小时内回滚至旧版本
测试数据准备
- 测试账号(不同等级VIP账号)
- 测试应用(不同大小、类型)
- 网络模拟工具(如Charles/Fiddler)
注意事项
- 使用测试服务器避免影响生产环境
- 准备充足的测试设备覆盖主流机型
- 注意测试账号的下载权限设置