# FinalAgent **Repository Path**: wzipll/final-agent ## Basic Information - **Project Name**: FinalAgent - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-30 - **Last Updated**: 2026-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能体测试平台 基于智谱AI和Midscene的UI自动化测试平台,支持自然语言交互执行测试用例。 ## 功能特性 ### 对话目录 - 新建对话:创建新的测试对话会话 - 历史对话:查看和管理历史对话记录 - 自然语言交互:通过对话方式执行测试用例 - 测试运行:支持单用例或多用例批量运行 ### 知识库目录 - 上传测试用例:支持Excel格式测试用例上传 - 自动解析:自动解析模块、名称、步骤等信息 - 向量检索:基于向量相似度的智能检索 - CRUD操作:支持知识库的查看、修改、删除 ### 技术架构 - **后端**: Django + Django REST Framework - **数据库**: SQLite + ChromaDB向量数据库 - **AI引擎**: 智谱AI (GLM-4) - **UI自动化**: Playwright + Midscene - **前端**: Bootstrap 5 单页应用 ## 快速开始 ### 环境要求 - Python 3.9+ - Node.js 18+ (用于Playwright) ### 安装步骤 1. 克隆项目 ```bash git clone cd FinalAgent ``` 2. 安装依赖 ```bash pip install -r requirements.txt playwright install chromium ``` 3. 配置环境变量 ```bash cp .env.example .env # 编辑.env文件,设置ZHIPU_API_KEY ``` 4. 初始化数据库 ```bash python manage.py makemigrations python manage.py migrate ``` 5. 创建管理员账户 ```bash python manage.py createsuperuser ``` 6. 启动服务 ```bash # Windows start.bat # Linux/Mac chmod +x start.sh ./start.sh ``` 7. 访问应用 - 前端页面: http://127.0.0.1:8000/ - 管理后台: http://127.0.0.1:8000/admin/ ## 测试用例格式 上传的Excel文件应包含以下列: | 列名 | 说明 | 必填 | |------|------|------| | 模块 | 测试模块名称 | 是 | | 用例名称 | 测试用例名称 | 是 | | 步骤序号 | 步骤执行顺序 | 是 | | 操作类型 | navigate/click/input/assert/wait等 | 是 | | 目标元素 | CSS选择器或XPath | 否 | | 操作值 | 操作参数值 | 否 | | 步骤描述 | 步骤详细说明 | 否 | | 预期结果 | 预期结果描述 | 否 | ### 支持的操作类型 | 操作 | 说明 | 示例 | |------|------|------| | navigate | 页面导航 | 值: https://example.com | | click | 点击元素 | 目标: button.submit | | input | 输入文本 | 目标: #username, 值: testuser | | assert | 断言验证 | 值: text:预期文本 | | wait | 等待 | 值: 1000 (毫秒) | | screenshot | 截图 | 值: screenshot.png | | scroll | 滚动 | 目标: .content | | hover | 悬停 | 目标: .menu-item | | select | 选择选项 | 目标: select, 值: option1 | | custom | 自定义 | 值: JavaScript代码 | ## API接口 ### 对话管理 - `GET /api/conversations/` - 获取对话列表 - `POST /api/conversations/` - 创建新对话 - `GET /api/conversations/{id}/` - 获取对话详情 - `POST /api/conversations/{id}/send_message/` - 发送消息 - `POST /api/conversations/{id}/run_tests/` - 运行测试 ### 知识库管理 - `GET /api/knowledge/bases/` - 获取知识库列表 - `POST /api/knowledge/bases/` - 创建知识库 - `GET /api/knowledge/cases/` - 获取测试用例列表 - `POST /api/knowledge/cases/upload_excel/` - 上传Excel文件 - `POST /api/knowledge/cases/search/` - 搜索测试用例 ### 测试执行 - `GET /api/test/executions/` - 获取执行记录 - `GET /api/test/executions/statistics/` - 获取统计数据 ### 技能管理 - `GET /api/skills/skills/` - 获取技能列表 - `POST /api/skills/skills/{id}/execute/` - 执行技能 ## Skills与MCP集成 ### Skill目录结构 ``` my-skill/ ├── SKILL.md # 必选:核心指令与元数据 ├── scripts/ # 可选:执行脚本 │ └── main.py ├── templates/ # 可选:输出模板 │ └── report.md └── references/ # 可选:背景文档、规范 └── playwright_docs.md ``` ### 创建自定义Skill 1. 在`my-skill`目录下创建SKILL.md文件 2. 编写核心指令和使用说明 3. 添加执行脚本(可选) 4. 定义输出模板(可选) 5. 通过API注册技能 ## 项目结构 ``` FinalAgent/ ├── agent_test_platform/ # Django项目配置 ├── conversations/ # 对话管理模块 ├── knowledge_base/ # 知识库管理模块 ├── test_runner/ # 测试执行模块 ├── skills/ # 技能管理模块 ├── my-skill/ # 自定义技能目录 ├── templates/ # 前端模板 ├── static/ # 静态文件 ├── media/ # 上传文件 ├── vector_db/ # 向量数据库 ├── manage.py ├── requirements.txt ├── start.bat # Windows启动脚本 ├── start.sh # Linux/Mac启动脚本 └── .env.example # 环境变量示例 ``` ## 配置说明 ### 环境变量 | 变量名 | 说明 | 默认值 | |--------|------|--------| | ZHIPU_API_KEY | 智谱AI API密钥 | - | | ZHIPU_MODEL | 智谱AI模型 | glm-4 | ### Django设置 主要配置在`agent_test_platform/settings.py`: - `DEBUG`: 调试模式 - `ALLOWED_HOSTS`: 允许的主机 - `DATABASES`: 数据库配置 - `ZHIPU_API_KEY`: 智谱AI密钥 - `MIDSCENE_CONFIG`: Midscene配置 ## 常见问题 ### Q: 如何获取智谱AI API密钥? A: 访问智谱AI开放平台(https://open.bigmodel.cn/)注册并获取API密钥。 ### Q: Playwright浏览器安装失败? A: 尝试使用国内镜像: ```bash set PLAYWRIGHT_DOWNLOAD_HOST=https://npmmirror.com/mirrors/playwright playwright install chromium ``` ### Q: 向量数据库初始化失败? A: 确保安装了sentence-transformers: ```bash pip install sentence-transformers ``` ## 许可证 MIT License ## 贡献指南 欢迎提交Issue和Pull Request!