- 实现基于 PySide6 的 GUI 界面 - 集成 FastAPI 知识库服务器 API - 支持查看、编辑、提交 Markdown 文件 - 包含完整的 pytest-qt 测试套件 - 添加功能列表文档
1.8 KiB
1.8 KiB
功能列表
核心功能
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 - 功能列表(本文件)