Files
hfb_sys/docs/提现功能测试清单.md
T

397 lines
9.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 提现功能测试清单
## 🧪 测试环境准备
### 前置条件
- [x] 后端服务已启动(http://localhost:8080
- [x] 前端服务已启动(http://localhost:5173
- [x] 数据库迁移已执行
- [x] 财务角色和权限已配置
---
## 📝 用户端测试
### 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 | | | |
---
## 📝 测试报告
**测试日期**
**测试人员**
**测试环境**
**测试结果**
**备注**
---
## 🚀 上线前检查清单
- [ ] 所有测试通过
- [ ] 生产环境加密密钥已更新
- [ ] 数据库迁移已在生产环境执行
- [ ] 财务管理员账号已创建
- [ ] 财务角色权限已配置
- [ ] 备份数据库
- [ ] 准备回滚方案
- [ ] 监控和告警配置
---
**测试完成后,系统即可上线使用!**