test: use PostgreSQL and live model integrations
This commit is contained in:
+9
-2
@@ -96,10 +96,17 @@ Python 依赖由 `backend/pyproject.toml` 管理:
|
||||
cd backend
|
||||
uv sync --extra ocr --group dev
|
||||
uv run alembic upgrade head
|
||||
uv run pytest
|
||||
uv run uvicorn wisegrade.main:app --reload
|
||||
```
|
||||
|
||||
测试从仓库根目录运行:
|
||||
|
||||
```bash
|
||||
docker compose --profile test run --build --rm test
|
||||
```
|
||||
|
||||
测试使用独立的 PostgreSQL 16 + pgvector 容器,不连接业务数据库。每个数据库测试创建临时数据库,执行 Alembic 迁移后运行,结束时删除;`test-db` 的数据目录为 tmpfs,不会写入业务数据卷。测试会从 `.env` 读取真实 DeepSeek API Key,并加载 `models/bge-m3` 和 `models/ocr` 中的离线模型;完整流程测试会发起真实模型请求。在宿主机直接运行 `uv run pytest` 时,需先设置指向专用 `wisegrade_tests` 数据库的 `TEST_DATABASE_URL`(使用 `postgresql+psycopg` 驱动,账号需有创建数据库的权限),并提供可用的模型配置。
|
||||
|
||||
本地开发需提供 PostgreSQL、Redis 和与容器路径一致的挂载目录;可用 Compose 启动 `db` 和 `redis`。Vite 前端:
|
||||
|
||||
```bash
|
||||
@@ -108,7 +115,7 @@ npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
开发服务器将 `/api` 代理到 `localhost:8000`。测试中的 DeepSeek 请求使用 mock,不会使用真实 API Key。集成测试从仓库 `docs/` 复制阶段报告 1、2、3 与最终报告,并生成一份汇报 PDF 测试材料。
|
||||
开发服务器将 `/api` 代理到 `localhost:8000`。集成测试从仓库 `docs/` 复制阶段报告 1、2、3 与最终报告,并生成一份汇报 PDF 测试材料。
|
||||
|
||||
## 故障定位
|
||||
|
||||
|
||||
Reference in New Issue
Block a user