# VisioBotClient **Repository Path**: lixiaolv1/VisioBotClient ## Basic Information - **Project Name**: VisioBotClient - **Description**: No description available - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-10 - **Last Updated**: 2026-06-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # VisioBot AI 实现的 UI 自动化测试项目,基于大语言模型驱动的智能 UI 测试工具。 ![Yangfan QR Code](./docs/yangfan.jpg) ## 项目概述 VisioBot 是一个基于 AI 技术的 UI 自动化测试平台,通过大语言模型理解测试需求,自动生成测试用例并执行,支持多平台设备管理和测试报告生成。 ## 核心功能 - 🤖 **AI 驱动测试**:基于大语言模型自动理解需求、生成测试用例 - 📱 **多设备管理**:支持 Android 设备的连接、监控和管理 - 🎯 **智能定位**:自动识别 UI 元素,无需手动编写定位表达式 - 📊 **实时测试报告**:生成详细的测试执行报告和截图 - 🌐 **Web 界面**:提供直观的 Web 管理界面 - 🔄 **自动化执行**:支持测试任务的自动调度和执行 - 💬 **自然语言交互**:支持通过自然语言描述测试需求 ## 技术栈 ### 后端 - **语言**:Go 1.23.0 - **框架**:Gin Web 框架 - **数据库**:GORM + SQLite - **AI 集成**:langchaingo (LLM 调用) - **设备通信**:ADB (Android Debug Bridge) - **日志**:Zap + Zerolog - **WebSocket**:实时通信 ### 前端 - **框架**:Vue.js - **构建工具**:Vite - ### 移动端 - **Android**:ADB + UiAutomator2 ## 项目结构 ``` VisioBot/ ├── executor/ # 后端执行引擎 │ ├── ai/ # AI 相关功能 │ ├── config/ # 配置管理 │ ├── core/ # 核心服务 │ ├── global/ # 全局变量 │ ├── initialize/ # 初始化逻辑 │ ├── langchaingo/ # LLM 集成 │ ├── llm/ # 大模型工具 │ ├── middleware/ # 中间件 │ ├── model/ # 数据模型 │ ├── router/ # API 路由 │ ├── service/ # 业务服务 │ ├── uiagent/ # UI 代理 │ ├── utils/ # 工具函数 │ ├── websocket/ # WebSocket 处理 │ └── main.go # 入口文件 ├── web/ # 前端应用 │ ├── public/ # 静态资源 │ └── src/ # 源代码 ├── apk/ # 测试用 APK 文件 ├── adb/ # ADB 相关文档 ├── new/ # 技术对比文档 └── README.md # 项目说明 ``` ## 快速开始 ### 环境要求 - **Go**:1.23.0 及以上 - **Node.js**:16.0.0 及以上 - **npm/yarn**:最新版本 - **ADB**:Android Debug Bridge,用于连接 Android 设备 ### 安装步骤 #### 1. 克隆项目 ```bash git clone cd VisioBot ``` #### 2. 启动后端服务 ```bash # 进入执行引擎目录 cd executor # 安装依赖 go mod tidy # 启动服务 go run main.go ``` #### 3. 启动前端服务 ```bash # 返回项目根目录 cd .. # 进入前端目录 cd web # 安装依赖 npm install # 启动开发服务器 npm run dev ``` #### 4. 访问 Web 界面 打开浏览器访问:`http://localhost:5173` ## 核心模块说明 ### 1. AI 引擎 基于 langchaingo 实现大语言模型调用,用于: - 理解自然语言测试需求 - 生成测试用例和执行步骤 - 解析 UI 元素和上下文 - 智能决策测试执行路径 ### 2. 设备管理 - 自动发现和连接 Android 设备 - 实时监控设备状态 - 支持设备分组和管理 - 提供设备操作 API ### 3. UI 自动化 - 基于 ADB 和 UiAutomator2 实现 UI 操作 - 支持点击、输入、滑动等常用操作 - 自动截图和元素识别 - 支持多应用切换 ### 4. 测试执行 - 支持多种测试执行模式 - 实时记录测试过程 - 生成详细测试报告 - 支持测试用例管理 ## 使用指南 ### 1. 连接设备 1. 确保设备已开启开发者模式和 USB 调试 2. 通过 USB 连接设备到服务器 3. 在 Web 界面中查看已连接设备 ### 2. 创建测试任务 1. 在 Web 界面中点击「创建任务」 2. 输入测试需求(支持自然语言描述) 3. 选择目标设备和应用 4. 点击「开始测试」 ### 3. 查看测试结果 1. 在测试任务列表中查看任务状态 2. 点击任务查看详细执行报告 3. 查看测试截图和日志 4. 导出测试报告 ## 配置说明 ### 后端配置 配置文件位于 `executor/config/config.go`,主要配置项包括: - `ADB.Path`:ADB 工具路径 - `LLM`:大模型调用配置 - `Server`:服务器端口和地址 - `Log`:日志配置 ### 前端配置 配置文件位于 `web/src/config`,主要配置项包括: - `API_BASE_URL`:后端 API 地址 - `WEBSOCKET_URL`:WebSocket 连接地址 ## 架构设计 ### 系统架构 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ Web 前端 │────▶│ 后端服务 │────▶│ AI 引擎 │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ ▲ ▼ │ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 设备管理 │◀────│ 测试执行器 │◀────│ 测试用例生成 │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ ▼ ┌─────────────────┐ ┌─────────────────┐ │ 测试报告 │◀────│ 数据存储 │ └─────────────────┘ └─────────────────┘ ``` ### 核心流程 1. **需求输入**:用户通过 Web 界面输入测试需求 2. **AI 分析**:大语言模型理解需求,生成测试用例 3. **任务调度**:后端服务调度测试任务到目标设备 4. **设备执行**:测试执行器在设备上执行测试用例 5. **结果收集**:实时收集测试结果和截图 6. **报告生成**:生成详细的测试报告 ## 使用文档 - [VisioBot 使用指南](./docs/USAGE_GUIDE.md) - 详细的用户使用手册 ## 开发说明 ### 代码规范 - 后端 Go 代码遵循 Go 官方规范 - 前端代码遵循 Vue 最佳实践 - 提交代码前请运行 lint 检查 ### 构建命令 ```bash # 后端构建 cd executor go build -o visiobot main.go # 前端构建 cd web npm run build ``` ### 测试命令 ```bash # 后端测试 cd executor go test ./... # 前端测试 cd web npm run test ``` ## 贡献指南 1. Fork 项目 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启 Pull Request ## 许可证 MIT License ## 联系方式 - 项目地址:https://github.com/lingcetech/visiobot - 问题反馈:https://github.com/lingcetech/visiobot/issues ## 更新日志 ### v0.1.4 - 增强 AI 引擎能力,优化测试用例生成逻辑 - 完善设备管理功能,支持更多设备操作 - 优化 UI 自动化执行效率 - 改进前端界面,提升用户体验 - 修复已知 bug,增强系统稳定性 详细版本说明:[VisioBot v0.1.4](./docs/v0.1.4.md) ### v0.1.0 (初始版本) - 实现基础的设备管理功能 - 支持 AI 测试用例生成 - 实现 Web 管理界面 - 支持 Android 设备测试 ## 致谢 感谢所有为项目做出贡献的开发者们! --- **VisioBot** - AI 驱动的下一代 UI 自动化测试平台