性能优化

This commit is contained in:
Alex-larget
2026-03-17 14:02:09 +08:00
parent 2f35520670
commit c24caf63c5
46 changed files with 1387 additions and 1879 deletions

View File

@@ -0,0 +1,102 @@
# Soul 创业派对 - 测试报告(环境与用例清单)
> 测试人员产出。环境就绪后执行 `pytest -v` 并填写结果。
---
## 一、测试环境
| 环境 | API 地址 | 说明 |
|------|----------|------|
| **local** | http://localhost:8080 | 本地开发,需先启动 soul-api |
| **souldev** | https://souldev.quwanzhi.com | 测试服,需已部署 |
| **soulapi** | https://soulapi.quwanzhi.com | 正式服,慎用 |
**配置方式**
- 复制 `scripts/test/.env.test.example``.env.test`
- 设置 `SOUL_TEST_ENV=local|souldev|soulapi``SOUL_API_BASE=<地址>`
**运行命令**
```bash
cd scripts/test
# Windows PowerShell
$env:SOUL_TEST_ENV="local" # 或 souldev
pytest -v
```
---
## 二、用例清单(共 18 个)
### 2.1 小程序接口miniapp/
| 用例 | 验证点 | 前置条件 |
|------|--------|----------|
| **test_config_public** | GET /api/miniprogram/config 返回 200含 prices、features、mpConfig | 无 |
| **test_dev_login_as** | POST /api/miniprogram/dev/login-as 按 userId 登录成功 | SOUL_MINIPROGRAM_DEV_USER_ID 已配置APP_ENV=development |
### 2.2 管理端接口web/
| 用例 | 验证点 | 前置条件 |
|------|--------|----------|
| **test_admin_login** | POST /api/admin 登录成功,返回 token、user | 无 |
| **test_admin_check_with_token** | GET /api/admin 带 token 鉴权通过 | admin 登录成功 |
| **test_admin_check_without_token** | GET /api/admin 无 token 返回 401 | 无 |
| **test_upload_post_success** | POST /api/upload 上传图片成功,返回 url、data | 无 |
| **test_upload_post_with_admin_token** | POST /api/upload 带 token 可上传 | admin 登录 |
| **test_upload_post_no_file** | POST /api/upload 无 file 返回 400 | 无 |
| **test_upload_post_invalid_type** | POST /api/upload 非图片格式返回 400 | 无 |
| **test_upload_delete_local** | DELETE /api/upload 删除本地文件(先上传再删) | 无 |
| **test_upload_delete_no_path** | DELETE /api/upload 无 path 返回 400 | 无 |
### 2.3 流程测试process/
| 用例 | 验证点 | 前置条件 |
|------|--------|----------|
| **test_health** | GET /health 返回 200 | soul-api 已启动 |
| **test_person_ensure_creates_ckb_plan_when_not_exists** | @某人 不存在时 POST /api/db/persons 创建 Person + 存客宝计划 | admin 登录CKB 配置正确 |
| **test_person_ensure_returns_existing_when_name_exists** | 相同 name 返回已有 Person不重复创建 | 同上 |
| **test_person_ensure_rejects_empty_name** | 空 name 被拒绝 | 同上 |
| **test_article_mention_flow_persons_list_contains_new** | 文章保存后 persons 列表含新人物 | 同上 |
| **test_new_article_save_auto_creates_person_and_ckb** | 新文章保存自动创建 Person 与存客宝计划 | 同上 |
| **test_backfill_persons_ckb_api_key** | 从存客宝补齐 persons.ckb_api_key | admin 登录CKB 配置persons 有 ckb_plan_id |
---
## 三、源码质量优化相关回归点(手工验证)
以下为 2026-03-17 源码质量优化后的建议回归项,自动化用例未覆盖:
| 场景 | 验证点 |
|------|--------|
| **支付流程** | read 页购买章节/全书 → 微信支付 → 回调更新购买状态 |
| **管理端用户详情** | 用户列表点击详情 → 行为轨迹 Tab 展示(调用 /api/admin/user/track |
| **我的页** | 找伙伴、推广、搜索入口根据 featureConfig 显示/隐藏 |
| **首页/目录** | 搜索栏根据 searchEnabled 显示/隐藏 |
| **提现测试接口** | GIN_MODE=release 时 GET/POST /api/admin/withdraw-test 返回 404 |
---
## 四、测试结果记录
| 执行日期 | 环境 | 通过 | 失败 | 跳过 | 备注 |
|----------|------|------|------|------|------|
| 2026-03-17 | local | 16 | 0 | 2 | 含新增文件上传 6 用例2 跳过dev_login、backfill 需配置) |
| (待填写) | local / souldev | - | - | - | - |
### 失败用例详情(若有)
| 用例 | 错误信息 | 处理 |
|------|----------|------|
| - | - | - |
---
## 五、环境就绪检查
执行测试前请确认:
- [ ] soul-api 已启动local 时 `go run cmd/server/main.go``scripts/本地启动.sh`
- [ ] 测试环境变量已设置SOUL_TEST_ENV 或 SOUL_API_BASE
- [ ] 管理端账号可登录(默认 admin/admin123
- [ ] 流程测试需 CKB 配置时soul-api/.env 已配置 CKB_OPEN_API_KEY、CKB_OPEN_ACCOUNT