# testManager **Repository Path**: gyhhenry/test-manager ## Basic Information - **Project Name**: testManager - **Description**: No description available - **Primary Language**: Unknown - **License**: MPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-09 - **Last Updated**: 2026-05-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README testManager 一个包含后端接口服务(Gin + gorm)和桌面客户端(Wails + React)的接口压测与管理工具。 ## 后端服务运行 1. 复制并修改配置文件: ```bash cp etc/config.example.yaml etc/config.yaml # 按需修改数据库、JWT 等配置 vim etc/config.yaml ``` 2. 启动后端 API + gRPC 服务: ```bash make run ``` 默认会在本机启动: - HTTP 接口文档: - gRPC 服务:监听在配置文件中指定的端口(通常与 HTTP 同进程)。 ## 桌面客户端(Wails)运行 桌面客户端位于 `desktop/` 目录,使用 Wails + React 开发,用于本地管理接口配置,并通过 gRPC 与后端同步数据。 ### 开发模式 1. 安装 Wails 2(如未安装): ```bash # 参考 https://wails.io/docs/gettingstarted/installation 安装 wails CLI wails doctor ``` 2. 在 `desktop/` 目录下启动开发模式: ```bash cd desktop wails dev ``` 这会: - 启动前端 Vite 开发服务器; - 启动 Go 后端(本地 SQLite + gRPC 客户端); - 弹出桌面窗口,实时热更新前端代码。 > 注意:运行桌面端前,请先确保后端服务已经通过 `make run` 启动,并且 gRPC 端口与 `desktop/wails.json` 中配置保持一致。 ### 打包桌面应用 在 `desktop/` 目录下执行: ```bash cd desktop wails build ``` 构建完成的可执行文件位于 `desktop/build/bin/` 目录。 ## 项目结构概览 - `backend/` - `cmd/`:后端服务入口(main.go)。 - `config/`:配置结构体定义。 - `controller/`:HTTP 接口控制器(Auth、Company、Group 等)。 - `dao/`:数据访问层(User、Company、Group、ApiReq 等)。 - `model/`:gorm 模型定义。 - `router/`:Gin 路由注册。 - `server/`:gRPC `Manager` 服务实现。 - `service/`:业务逻辑层。 - `utils/`:JWT、密码、响应封装等工具。 - `desktop/` - `app.go`:Wails App 入口与 gRPC 客户端初始化。 - `dao.go`:桌面端本地 SQLite 访问与与后端的同步逻辑。 - `frontend/`:React 前端代码(页面、组件、路由)。 - `pb/` - `test.proto` 及生成的 `*.pb.go`:gRPC 接口与消息定义。 ## 常见开发流程 1. 修改后端业务逻辑(如 Group、ApiReq 管理),运行: ```bash go test ./... make run ``` 2. 在桌面端开发/调试: ```bash cd desktop wails dev ``` 3. 确认功能后,打包桌面应用: ```bash cd desktop wails build ``` 如需调整端口、数据库等,请优先修改 `backend/etc/config.yaml` 和 `desktop/.env` 中对应配置。 注意:桌面端的 gRPC 客户端配置需要与后端服务保持一致,确保能够正确连接到后端 API 服务。 API端口需要带上Baseurl (如 http://localhost:8080/api/v1 )才能正确访问后端接口。