refactor: 优化API路由和响应模型 feat(admin): 添加App用户管理接口 feat(sms): 实现阿里云短信服务集成 feat(email): 添加SMTP邮件发送功能 feat(upload): 支持文件上传接口 feat(rate-limiter): 实现手机号限流器 fix: 修复计算步骤入库问题 docs: 更新API文档和测试计划 chore: 更新依赖和配置
41 lines
2.0 KiB
Markdown
41 lines
2.0 KiB
Markdown
## 目标
|
||
- 编写一个一次性可运行的接口测试脚本,按照总览文档顺序执行:
|
||
1) App 用户注册 → 登录 → 用户相关接口
|
||
2) 提交估值(用户端)并轮询结果(列表/详情)
|
||
3) 管理端登录(admin)→ 查看估值数据(列表/详情)
|
||
- 输出结构化结果与关键字段校验,便于快速人工检查。
|
||
|
||
## 脚本位置与运行
|
||
- 路径:`scripts/api_smoke_test.py`
|
||
- 运行:`python scripts/api_smoke_test.py --base http://127.0.0.1:9991/api/v1`
|
||
- 基础:默认使用 `http://127.0.0.1:9991/api/v1`(根据 `run.py`),可通过参数覆盖。
|
||
|
||
## 步骤与端点
|
||
1. App 用户注册与登录
|
||
- POST `/app-user/register`(若手机号已存在则跳过)
|
||
- POST `/app-user/login` → 获取 `access_token`
|
||
- GET `/app-user/profile`、GET `/app-user/dashboard`、GET `/app-user/quota`
|
||
|
||
2. 用户端估值
|
||
- POST `/app-valuations/`(使用总览文档示例数据,最小必要字段)
|
||
- 轮询 GET `/app-valuations/`(分页)查看是否新增记录,捕获 `id`
|
||
- GET `/app-valuations/{id}` 详情
|
||
|
||
3. 管理端数据查看
|
||
- POST `/base/access_token`(admin/123456)获取后端 `token`
|
||
- GET `/valuations` 列表(后台视角)
|
||
- GET `/valuations/{id}` 详情(与用户端一致性对比)
|
||
|
||
## 输出与校验
|
||
- 每步打印:请求路径、状态码、关键字段(如 `access_token`、`user_id`、`latest_valuation`、`final_value_ab`)
|
||
- 断言:登录成功、列表包含新记录、详情字段存在。
|
||
- 错误处理:捕获非 200 情况并打印 `code/msg`。
|
||
|
||
## 技术细节
|
||
- 使用 `requests` 与 `Session` 维护 `token`;用户端与后台端各独立 `Session`。
|
||
- 函数化:为每个步骤提供函数与函数级注释(描述、参数、返回值)。
|
||
- 兼容:对注册接口“手机号已存在”返回情况做兼容(脚本继续执行)。
|
||
|
||
## 交付
|
||
- 创建 `scripts/api_smoke_test.py` 并填充完整逻辑;默认数据内置,必要处留参数。
|
||
- 如你需要,我可在脚本创建后直接运行,输出结果供你检查。 |