重构: 迁移后端代码到 app 目录,前端移动到 WebUI,添加完整测试套件
主要变更: - 后端代码从根目录迁移到 app/ 目录 - 前端代码从 frontend/ 重命名为 WebUI/ - 更新所有导入路径以适配新结构 - 提取公共 API 响应函数到 app/api/common.py - 精简验证器服务代码 - 更新启动脚本和文档 测试: - 新增完整测试套件 (tests/) - 单元测试: 模型、仓库层 - 集成测试: 覆盖所有 22+ API 端点 - E2E 测试: 4个完整工作流场景 - 添加 pytest 配置和测试运行脚本
This commit is contained in:
55
README.md
55
README.md
@@ -36,7 +36,7 @@ pip install -r requirements.txt
|
||||
### 2. 安装前端依赖
|
||||
|
||||
```bash
|
||||
cd frontend
|
||||
cd WebUI
|
||||
npm install
|
||||
```
|
||||
|
||||
@@ -58,7 +58,7 @@ python api_server.py
|
||||
|
||||
**启动前端服务**(终端 2)
|
||||
```bash
|
||||
cd frontend
|
||||
cd WebUI
|
||||
npm run dev
|
||||
```
|
||||
|
||||
@@ -77,32 +77,35 @@ stop.bat
|
||||
|
||||
```
|
||||
ProxyPool/
|
||||
├── api_server.py # FastAPI 后端服务器
|
||||
├── config.py # 配置文件
|
||||
├── main.py # 项目入口
|
||||
├── requirements.txt # Python 依赖
|
||||
├── .env.example # 环境变量示例
|
||||
│
|
||||
├── script/ # 启动脚本
|
||||
│ ├── start.bat # Windows 启动脚本
|
||||
│ └── stop.bat # Windows 停止脚本
|
||||
├── app/ # 后端代码
|
||||
│ ├── api/ # FastAPI 路由
|
||||
│ │ ├── main.py # 应用工厂
|
||||
│ │ ├── routes/ # API 路由
|
||||
│ │ ├── deps.py # 依赖注入
|
||||
│ │ └── ...
|
||||
│ ├── core/ # 核心模块
|
||||
│ │ ├── config.py # 配置管理
|
||||
│ │ ├── db.py # 数据库连接
|
||||
│ │ ├── log.py # 日志配置
|
||||
│ │ ├── plugin_system/ # 插件系统
|
||||
│ │ └── tasks/ # 任务队列
|
||||
│ ├── models/ # 数据模型
|
||||
│ ├── repositories/ # 数据访问层
|
||||
│ ├── services/ # 业务逻辑层
|
||||
│ └── plugins/ # 代理源插件
|
||||
│ ├── fate0.py # Fate0 代理源
|
||||
│ ├── ip3366.py # IP3366 代理源
|
||||
│ ├── ip89.py # IP89 代理源
|
||||
│ ├── kuaidaili.py # 快代理源
|
||||
│ ├── yundaili.py # 云代理源
|
||||
│ ├── speedx.py # SpeedX 代理源
|
||||
│ └── proxylist_download.py # ProxyList 代理源
|
||||
│
|
||||
├── core/ # 核心模块
|
||||
│ ├── crawler.py # 爬虫基类
|
||||
│ ├── validator.py # 代理验证器
|
||||
│ ├── sqlite.py # 数据库管理
|
||||
│ ├── plugin_manager.py # 插件管理器
|
||||
│ └── log.py # 日志配置
|
||||
│
|
||||
├── plugins/ # 代理源插件
|
||||
│ ├── fate0.py # Fate0 代理源
|
||||
│ ├── ip3366.py # IP3366 代理源
|
||||
│ ├── ip89.py # IP89 代理源
|
||||
│ ├── kuaidaili.py # 快代理源
|
||||
│ ├── yundaili.py # 云代理源
|
||||
│ ├── speedx.py # SpeedX 代理源
|
||||
│ └── proxylist_download.py # ProxyList 代理源
|
||||
│
|
||||
├── frontend/ # Vue3 前端
|
||||
├── WebUI/ # Vue3 前端
|
||||
│ ├── src/
|
||||
│ │ ├── api/ # API 封装
|
||||
│ │ ├── stores/ # Pinia 状态管理
|
||||
@@ -113,6 +116,10 @@ ProxyPool/
|
||||
│ ├── index.html
|
||||
│ └── package.json
|
||||
│
|
||||
├── script/ # 启动脚本
|
||||
│ ├── start.bat # Windows 启动脚本
|
||||
│ └── stop.bat # Windows 停止脚本
|
||||
│
|
||||
└── db/ # 数据存储目录
|
||||
└── proxies.sqlite # SQLite 数据库
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user