98 lines
5.3 KiB
Markdown
98 lines
5.3 KiB
Markdown
# UI Page Testing Checklist (By Page → Actions → Data Validation)
|
||
|
||
## Prereqs
|
||
- Seed: `go run ./backend/main.go seed`(会 TRUNCATE 并重建种子数据)。
|
||
- tenantCode: `SELECT code FROM tenants ORDER BY id DESC LIMIT 1;`(示例:`meipai_768`)。
|
||
- Portal base: `http://10.1.1.104:5174`,Superadmin base: `http://10.1.1.104:5173`。
|
||
- Login creds: Portal OTP 固定 `1234`(手机号 `13800138000`),Superadmin `superadmin/superadmin123`。
|
||
|
||
## Portal(/t/:tenantCode/...)
|
||
- **Login** `/auth/login`
|
||
- 操作:填手机号 `13800138000` + 勾条款 → 获取验证码 → 输入 `1234` → 登录。
|
||
- 数据验证:登录态写入 token;后续接口 200;用户信息显示 “戏迷小张(ID:2)”。
|
||
- DB 验证:`users` 中 phone 唯一;登录命中最新用户(ID 最大)。
|
||
|
||
- **Home** `/t/:tenantCode`
|
||
- 操作:页面加载、点击内容卡片进入详情。
|
||
- 数据验证:内容列表非空;跳转到对应 contentId。
|
||
- DB 验证:`contents` 至少 10 条,tenant_id 为当前租户。
|
||
|
||
- **Content Detail** `/t/:tenantCode/contents/:id`
|
||
- 操作:查看封面/正文,点赞/收藏按钮可用。
|
||
- 数据验证:点赞/收藏后,列表页/我的点赞/收藏同步变化。
|
||
- DB 验证:`content_assets` 绑定封面/主资产;`user_content_actions` 写入 like/favorite。
|
||
|
||
- **Orders** `/t/:tenantCode/me/orders`
|
||
- 操作:查看订单列表,点击“查看详情”。
|
||
- 数据验证:列表非空;详情金额/状态与列表一致。
|
||
- DB 验证:`orders`、`order_items`、`content_access` 状态/金额匹配。
|
||
|
||
- **Order Detail** `/t/:tenantCode/me/orders/:id`
|
||
- 操作:查看订单状态、商品信息,复制订单号。
|
||
- 数据验证:金额/状态显示正确;“已支付/已退款”等标签与订单一致。
|
||
- DB 验证:`orders.status`、`order_items.amount_paid` 与页面一致。
|
||
|
||
- **Checkout** `/t/:tenantCode/checkout?contentId=:id`(半成品)
|
||
- 操作:加载内容 → 点击“提交订单”→ 跳转 Payment。
|
||
- 数据验证:显示商品标题/价格(取 `price_amount` 等);创建订单成功跳转。
|
||
- DB 验证:`orders` 新增一条(tenant_id、user_id、content_id 匹配)。
|
||
|
||
- **Payment** `/t/:tenantCode/payment/:orderId`
|
||
- 操作:点击“确认余额支付”(调用 `/pay`);如余额不足,先在钱包使用充值码充值再支付。
|
||
- 数据验证:状态变为 paid/completed 后跳转订单详情;金额显示来自订单。
|
||
- DB 验证:`orders.status` 更新为 paid/completed;`orders.amount_paid` 与页面一致。
|
||
|
||
- **Library** `/t/:tenantCode/me/library`
|
||
- 操作:查看已购列表。
|
||
- 数据验证:非空;点击内容可播放/查看。
|
||
- DB 验证:`content_access` 记录存在且 status=active。
|
||
|
||
- **Favorites / Likes** `/t/:tenantCode/me/favorites` `/likes`
|
||
- 操作:列表展示,取消收藏/点赞。
|
||
- 数据验证:取消后列表减少;详情页同步。
|
||
- DB 验证:`user_content_actions` 删除/新增对应记录。
|
||
|
||
- **Coupons** `/t/:tenantCode/me/coupons`
|
||
- 操作:查看可用/已用/已过期;新人券应可见。
|
||
- 数据验证:金额/门槛显示正确。
|
||
- DB 验证:`user_coupons.status`、`coupons` 配置匹配。
|
||
|
||
- **Wallet** `/t/:tenantCode/me/wallet`
|
||
- 操作:查看余额、交易明细;使用充值码充值。
|
||
- 数据验证:余额 50 元(seed);充值成功后余额增加;交易明细含购买/充值记录。
|
||
- DB 验证:`users.balance`、`orders`、`tenant_ledgers` 一致。
|
||
|
||
- **Notifications** `/t/:tenantCode/me/notifications`
|
||
- 操作:查看列表。
|
||
- 数据验证:种子“欢迎注册”可见;群发暂未落库(已知缺口)。
|
||
- DB 验证:`notifications` 当前仅种子数据;群发功能待修复。
|
||
|
||
- **Creator** `/t/:tenantCode/creator/*`
|
||
- 操作:Dashboard/内容/订单/成员/设置页面可打开。
|
||
- 数据验证:种子内容/订单/成员可见。
|
||
- DB 验证:`contents`、`tenant_users`、`orders` 等与租户匹配。
|
||
|
||
## Superadmin
|
||
- **Login** `/super/auth/login`
|
||
- 操作:账号 `superadmin/superadmin123` 登录。
|
||
- 数据验证:进入 Dashboard;后续接口 200。
|
||
|
||
- **Dashboard/Orders/Finance/Users/Tenants/Reports/Health/Contents/Assets/System Configs/Audit Logs**
|
||
- 操作:打开页面,查看列表/统计;在用户详情页执行超管充值与充值码生成。
|
||
- 数据验证:列表有种子数据;console 无 error;充值成功后钱包与充值记录刷新。
|
||
- DB 验证:对应表数据与显示一致(如 `orders`、`tenant_ledgers`、`recharge_codes`、`contents`、`media_assets` 等)。
|
||
|
||
- **Notifications (模板管理)** `/super/superadmin/notifications`
|
||
- 操作:编辑模板并保存。
|
||
- 数据验证:保存成功提示;模板列表更新。
|
||
- DB 验证:`notification_templates` 记录更新。
|
||
|
||
- **Broadcast (已知缺口)** `/super/v1/notifications/broadcast`
|
||
- API 返回 200 但 DB 无新增通知,说明 Notification provider 未落库;群发暂不可用。
|
||
|
||
## 已知缺口 / 注意事项
|
||
- 群发通知未写入 DB(待修复 provider)。
|
||
- 支付流半成品:需要后端 `/orders`、`/pay`、`/status` 字段/逻辑配合;前端已添加提交/轮询/支付按钮及模拟成功。
|
||
- 上传链路未验证(需真实存储)。
|
||
- 使用最新 seed 后再测,避免重复用户/数据污染。
|