9.7 KiB
9.7 KiB
提现功能测试清单
🧪 测试环境准备
前置条件
- 后端服务已启动(http://localhost:8080)
- 前端服务已启动(http://localhost:5173)
- 数据库迁移已执行
- 财务角色和权限已配置
📝 用户端测试
1. 收款账号管理测试
1.1 添加支付宝账号
- 访问
/wallet/payment-accounts - 点击"添加收款账号"
- 选择"支付宝"
- 输入账户名(需与实名认证姓名一致)
- 输入支付宝账号
- 点击"添加"
- 预期结果:成功添加,显示在列表中,账号已脱敏
1.2 添加微信账号
- 选择"微信"
- 输入账户名
- 输入微信号
- 点击"添加"
- 预期结果:成功添加
1.3 添加银行卡账号
- 选择"银行卡"
- 输入账户名
- 输入银行卡号
- 输入银行名称(如:中国工商银行)
- 输入开户支行(可选)
- 点击"添加"
- 预期结果:成功添加,银行信息显示
1.4 实名验证测试
- 使用未实名认证的账号添加收款账号
- 预期结果:提示"请先完成实名认证"
- 使用已实名账号,但账户名与实名不一致
- 预期结果:提示"账户名必须与实名认证姓名一致"
1.5 账号数量限制测试
- 添加第5个收款账号
- 预期结果:成功添加
- 尝试添加第6个收款账号
- 预期结果:按钮变为"已达账号数量上限",无法添加
1.6 设置默认账号
- 点击某个账号的"星星"图标
- 预期结果:该账号标记为默认,其他账号取消默认
1.7 编辑账号
- 点击某个账号的"编辑"按钮
- 修改支行信息(银行卡)
- 点击"更新"
- 预期结果:信息更新成功
1.8 删除账号
- 点击某个账号的"删除"按钮
- 确认删除
- 预期结果:账号删除成功
2. 提现申请测试
2.1 正常提现流程
- 访问
/wallet/withdrawal - 查看钱包余额显示正确
- 选择收款账号
- 输入金额 100
- 查看到账金额显示为 100(手续费0%)
- 点击"提交申请"
- 确认提现
- 预期结果:提现申请提交成功,在提现记录中显示"待审核"
2.2 最低金额限制测试
- 输入金额 5
- 预期结果:按钮禁用,或提示"提现金额低于最小限额"
2.3 最高金额限制测试
- 输入金额 6000
- 预期结果:提示"提现金额超过最大限额"
2.4 余额不足测试
- 输入金额大于可用余额
- 预期结果:显示红色警告"余额不足,可用余额:¥xxx"
2.5 无收款账号测试
- 删除所有收款账号
- 访问提现页面
- 预期结果:显示"还没有收款账号",引导添加
2.6 取消提现测试
- 在提现记录中找到"待审核"状态的提现
- 点击"取消"按钮
- 确认取消
- 预期结果:状态变为"已取消",余额解冻
2.7 无法取消已审核提现
- 尝试取消"处理中"或"已完成"状态的提现
- 预期结果:没有"取消"按钮
🔐 管理员端测试
3. 提现审核测试
3.1 登录财务账号
- 使用财务管理员账号登录
- 访问
/admin/withdrawals - 预期结果:可以正常访问
3.2 权限测试
- 使用非财务角色管理员登录
- 访问提现管理页面
- 预期结果:无权限或看不到相关菜单
3.3 查看提现列表
- 查看提现列表
- 预期结果:显示所有提现申请,包含用户信息、金额、收款方式、状态
3.4 状态筛选
- 选择"待审核"状态
- 点击"查询"
- 预期结果:只显示待审核的提现
3.5 用户筛选
- 输入用户ID
- 点击"查询"
- 预期结果:只显示该用户的提现记录
3.6 查看提现详情
- 点击某条记录的"详情"按钮
- 预期结果:
- 显示完整的提现信息
- 显示用户信息(昵称、手机号)
- 显示完整的收款账号(未脱敏)
- 显示金额信息
- 如有银行卡,显示开户支行
3.7 审核通过
- 在待审核的提现详情中点击"通过审核"
- 输入审核备注(可选)
- 确认
- 预期结果:
- 状态变为"处理中"
- 显示审核人和审核时间
- 显示操作提示"请手动转账到用户收款账号"
3.8 审核拒绝
- 在待审核的提现详情中点击"拒绝"
- 输入拒绝原因
- 确认
- 预期结果:
- 状态变为"已拒绝"
- 显示审核人和审核时间
- 用户余额解冻
3.9 确认打款
- 手动转账到用户收款账号
- 在"处理中"的提现详情中点击"确认打款"
- 输入打款备注(如:已通过支付宝转账)
- 确认
- 预期结果:
- 状态变为"已完成"
- 显示打款人和打款时间
- 用户冻结余额扣除
3.10 完整账号可见性测试
- 查看提现详情
- 预期结果:管理员可以看到完整的收款账号(未脱敏)
💰 钱包余额测试
4. 余额流转测试
4.1 提现冻结测试
- 记录提现前的可用余额和冻结余额
- 提交提现申请
- 查看钱包余额
- 预期结果:
- 可用余额减少(提现金额)
- 冻结余额增加(提现金额)
4.2 审核拒绝解冻测试
- 管理员拒绝提现
- 查看钱包余额
- 预期结果:
- 冻结余额减少(提现金额)
- 可用余额增加(提现金额)
4.3 用户取消解冻测试
- 用户取消待审核提现
- 查看钱包余额
- 预期结果:余额解冻(同上)
4.4 打款完成扣除测试
- 管理员确认打款
- 查看钱包余额
- 预期结果:
- 冻结余额减少(提现金额)
- 总余额减少(提现金额)
4.5 钱包流水测试
- 访问钱包流水页面
- 预期结果:可以看到以下流水记录
withdraw_freeze- 提现冻结withdraw_reject- 提现拒绝(如有)withdraw_cancel- 用户取消提现(如有)withdraw_complete- 提现完成
🔄 业务流程完整性测试
5. 端到端测试
场景1:正常提现流程
1. 用户添加收款账号 ✓
↓
2. 用户发起提现 ✓
↓
3. 余额冻结 ✓
↓
4. 管理员审核通过 ✓
↓
5. 管理员手动转账 ✓
↓
6. 管理员确认打款 ✓
↓
7. 冻结余额扣除 ✓
场景2:提现被拒绝
1. 用户发起提现 ✓
↓
2. 余额冻结 ✓
↓
3. 管理员审核拒绝 ✓
↓
4. 余额解冻 ✓
场景3:用户取消提现
1. 用户发起提现 ✓
↓
2. 余额冻结 ✓
↓
3. 用户取消提现 ✓
↓
4. 余额解冻 ✓
🎨 UI/UX 测试
6. 界面和交互测试
6.1 响应式测试
- 桌面端显示正常
- 平板端显示正常
- 手机端显示正常(如已适配)
6.2 加载状态
- 列表加载时显示 loading
- 提交操作时按钮显示 loading
- 数据为空时显示空状态
6.3 错误提示
- 网络错误时显示友好提示
- 表单验证错误显示清晰
- 操作失败时显示具体原因
6.4 确认对话框
- 删除账号需要确认
- 提交提现需要确认
- 取消提现需要确认
- 审核操作需要确认
6.5 状态标签
- 待审核:黄色警告标签
- 处理中:蓝色主题标签
- 已完成:绿色成功标签
- 已拒绝:红色危险标签
- 已取消:灰色信息标签
🔒 安全性测试
7. 安全测试
7.1 账号脱敏
- 用户端收款账号列表显示脱敏账号
- 提现记录显示脱敏账号
- 管理员端显示完整账号
7.2 权限验证
- 未登录用户无法访问提现页面
- 用户只能查看自己的收款账号
- 用户只能查看自己的提现记录
- 非财务管理员无法访问提现审核
7.3 实名验证
- 未实名用户无法添加收款账号
- 账户名不匹配无法添加
7.4 金额验证
- 最低金额限制生效
- 最高金额限制生效
- 余额不足无法提现
📊 数据一致性测试
8. 数据库验证
8.1 收款账号
- 账号加密存储(后端数据库检查)
- 默认账号只有一个
- 删除是软删除(status=disabled)
8.2 提现记录
- 提现单号唯一
- 账号信息快照正确
- 状态流转正确
- 审核信息记录完整
- 打款信息记录完整
8.3 钱包流水
- 每次操作都有对应流水
- 流水金额正确
- 余额计算正确
- 业务类型标记正确
✅ 测试结果
通过标准
- 所有核心功能测试通过
- 无阻塞性 Bug
- UI/UX 友好
- 安全性验证通过
- 数据一致性正确
发现的问题
| 编号 | 问题描述 | 严重程度 | 状态 |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 |
📝 测试报告
测试日期:
测试人员:
测试环境:
测试结果:
备注:
🚀 上线前检查清单
- 所有测试通过
- 生产环境加密密钥已更新
- 数据库迁移已在生产环境执行
- 财务管理员账号已创建
- 财务角色权限已配置
- 备份数据库
- 准备回滚方案
- 监控和告警配置
测试完成后,系统即可上线使用!