- 实现基于 PySide6 的 GUI 界面 - 集成 FastAPI 知识库服务器 API - 支持查看、编辑、提交 Markdown 文件 - 包含完整的 pytest-qt 测试套件 - 添加功能列表文档
80 lines
1.8 KiB
Markdown
80 lines
1.8 KiB
Markdown
# 功能列表
|
||
|
||
## 核心功能
|
||
|
||
### 1. 服务器管理
|
||
- ✅ 服务器地址配置
|
||
- ✅ 连接测试
|
||
- ✅ 状态显示
|
||
- ✅ 默认地址预设(http://43.134.1.17:8800/)
|
||
|
||
### 2. 文件管理
|
||
- ✅ 获取服务器文件列表
|
||
- ✅ 自动过滤只显示 .md 文件
|
||
- ✅ 刷新文件列表
|
||
- ✅ 文件列表点击加载
|
||
|
||
### 3. 文件编辑
|
||
- ✅ 查看 Markdown 文件内容
|
||
- ✅ 在线编辑文件内容
|
||
- ✅ 文件名显示和编辑
|
||
- ✅ 自动添加 .md 扩展名
|
||
|
||
### 4. 文件操作
|
||
- ✅ 保存修改到服务器(POST 请求)
|
||
- ✅ 提交新文件到服务器
|
||
- ✅ 文件内容验证
|
||
- ✅ 操作成功/失败提示
|
||
|
||
### 5. 用户界面
|
||
- ✅ 直观的分割窗口布局
|
||
- ✅ 左侧文件列表
|
||
- ✅ 右侧编辑区域
|
||
- ✅ 顶部服务器配置栏
|
||
- ✅ 底部操作按钮
|
||
- ✅ 状态栏显示
|
||
- ✅ 错误提示对话框
|
||
- ✅ 成功提示对话框
|
||
|
||
## 技术特性
|
||
|
||
### API 集成
|
||
- ✅ GET /list - 获取文件列表
|
||
- ✅ GET /{filename}/get - 下载文件内容
|
||
- ✅ POST /{filename}/post - 上传文件内容
|
||
- ✅ 请求超时处理(10秒)
|
||
- ✅ 错误处理和异常捕获
|
||
|
||
### 测试覆盖
|
||
- ✅ 窗口初始化测试
|
||
- ✅ UI 组件测试
|
||
- ✅ 服务器配置测试
|
||
- ✅ 文件操作测试
|
||
- ✅ 边界条件测试
|
||
- ✅ Mock 服务器响应测试
|
||
|
||
### 用户体验
|
||
- ✅ 自动依赖检查
|
||
- ✅ 一键启动脚本
|
||
- ✅ 一键测试脚本
|
||
- ✅ 中文本地化
|
||
- ✅ 友好的错误提示
|
||
- ✅ 实时状态更新
|
||
|
||
## 依赖项
|
||
|
||
- PySide6 6.6.0 - Qt6 GUI 框架
|
||
- requests 2.31.0 - HTTP 客户端
|
||
- pytest 7.4.3 - 测试框架
|
||
- pytest-qt 4.2.0 - Qt 应用测试
|
||
|
||
## 项目文件
|
||
|
||
- main_window.py - 主应用程序
|
||
- api_client.py - API 客户端
|
||
- test_app.py - 测试套件
|
||
- requirements.txt - 依赖列表
|
||
- run.bat - 启动脚本
|
||
- run_tests.bat - 测试脚本
|
||
- README.md - 使用文档
|
||
- FEATURES.md - 功能列表(本文件) |