使用说明
GitLab UI测试计划生成器
一个由AI驱动的MCP服务器,使用本地Ollama AI模型从GitLab合并请求中生成全面的UI测试计划。你的代码永远不会离开你的机器。
🏗️ 项目结构
gitlab-testplan-generator/
├── mcp-server/
│ ├── src/gitlab_mcp/ # Main package
│ │ ├── server.py # MCP server with ui_test_plan_from_mr tool
│ │ ├── analyzer.py # GitLab MR analysis with AI
│ │ ├── test_planner.py # AI-powered test plan generation
│ │ ├── ai_service.py # Local Ollama AI integration
│ │ └── models.py # Pydantic data models
│ ├── examples/ # Usage examples
│ │ ├── demo_analysis.py # Demo script
│ │ ├── example_usage.py # Example usage patterns
│ │ └── test_ollama.py # AI agent verification test
│ ├── docs/ # Documentation
│ ├── main.py # Entry point
│ ├── requirements.txt # Dependencies
│ └── .env # Environment configuration
└── venv/ # Virtual environment
🔧 特性
🤖 AI驱动的分析
- 使用本地Ollama AI模型进行智能代码分析
- 分析GitLab合并请求以识别受影响的UI区域
- 基于代码更改生成上下文感知测试场景
- 隐私第一:所有分析都在您的机器上本地进行
📋 综合测试计划
- 通过特定步骤生成以UI为中心的测试场景
- 每个测试场景的风险评估(高/中/低)
- 预期结果和验收标准
- 处理正面和边缘案例测试场景
🔗 无缝集成
- 通过MCP协议与Cursor IDE直接集成
- 简单
@ui_test_plan_from_mr命令用法 - 适用于GitLab.com和自托管GitLab实例
- 没有外部API调用-一切都在本地运行
🚀 快速开始
1.先决条件
- Python 3.8+
- 没有 已安装并正在运行
- GitLab个人访问令牌
- 光标IDE
2.安装
# Navigate to the project
cd gitlab-testplan-generator
# Create and activate virtual environment
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
cd mcp-server
pip install -r requirements.txt
3.配置
在中设置您的GitLab凭据 mcp-server/.env:
GITLAB_URL=https://gitlab.cee.redhat.com # Your GitLab instance
GITLAB_TOKEN=your-personal-access-token # GitLab PAT with api, read_repository scopes
GITLAB_SSL_VERIFY=false # For internal GitLab instances
4.在游标中安装
添加到您的 ~/.cursor/mcp.json:
{
"mcpServers": {
"gitlab-ui-test-plan-generator": {
"command": "/path/to/gitlab-testplan-generator/venv/bin/python",
"args": ["/path/to/gitlab-testplan-generator/mcp-server/main.py"],
"env": {
"GITLAB_URL": "https://gitlab.cee.redhat.com"
}
}
}
}
### 5. Start Ollama
```bash
# Install and start Ollama
ollama serve
# Pull the AI model (in another terminal)
ollama pull qwen2.5-coder:1.5b
6.验证AI代理(可选但推荐)
# Navigate to examples directory
cd mcp-server/examples
# Run AI agent verification test
python test_ollama.py
该测试验证:
- ✅ Ollama服务器状态和版本
- ✅ 所需AI模型可用性
- ✅ 人工智能生成能力
预期产量:
=== Ollama AI Agent Status Check ===
✅ Ollama server is running (version: 0.9.6)
✅ Required model 'qwen2.5-coder:1.5b' is available
✅ AI generation successful!
🎉 All tests passed! Your AI agent is running correctly on Ollama.
演示和示例
# Verify AI agent is working correctly
python examples/test_ollama.py
# Run demo analysis (works offline without GitLab credentials)
python examples/demo_analysis.py
# Run with real GitLab connection
# (requires configured .env file)
python examples/demo_analysis.py
📋 可用的MCP工具
ui_test_plan_from_mr
从GitLab合并请求生成UI测试计划的主要工具。
游标中的用法:
@ui_test_plan_from_mr https://gitlab.cee.redhat.com/project/-/merge_requests/123
它的作用:
- 🔍 分析合并请求并提取代码更改
- 🤖 使用本地AI了解变化的影响
- 🎯 识别受影响的UI区域和组件
- 📋 生成具有特定步骤的全面测试场景
- ⚠️ 为每种情况提供风险评估
💡 使用示例
在光标中:
@ui_test_plan_from_mr https://gitlab.cee.redhat.com/<project_name>/merge_requests/12345
@ui_test_plan_from_mr https://gitlab.cee.redhat.com/project/-/merge_requests/123/diffs
输出示例:
该工具生成:
- MR职务:[JIRA-ID]:MR标题描述
- 受影响的页面:受影响的页面和组件
- 测试场景:2-5个AI生成的场景
- 风险等级:每个场景的高/中/低
- 详细步骤:具体行动和预期成果
- AI洞察:变更和用户影响摘要
🔧 建筑
核心组件
CodeAnalyzer:分析GitLab合并请求并计算复杂性/风险分数UITestPlanGenerator:根据变更分析创建全面的测试计划MCP Server:通过模型上下文协议公开功能Models:用于类型安全和验证的Pydantic数据模型
成分分析
系统会根据文件模式自动识别组件:
- 认证:
/auth/,/login/,/user/文件 - 数据库:
.sql、迁移文件,/models/,/db/文件 - API:
/api/,/endpoints/,/routes/文件 - 前端:
.js,.ts,.vue,.html,.css文件 - 后端:
.py,.java,.cpp,.go文件 - 配置:
/config/,.env,.yaml,.json文件 - 安全:
/security/,/ssl/文件
风险评估
服务器自动评估风险等级:
- 高风险:安全文件、数据库迁移、配置文件、复杂更改(>100行)
- 中等风险:API文件、服务文件、中等复杂度(50-100行)
- 低风险:文档,简单更改(<50行)
📖 文档
🤝 贡献
- 分叉存储库
- 创建要素分支:
git checkout -b feature-name - 手动进行更改和测试
- 验证AI代理功能:
python examples/test_ollama.py - 使用真实的GitLab合并请求进行测试
- 提交拉取请求
开发设置
# Install dependencies
pip install -r requirements.txt
# Verify setup
python examples/demo_analysis.py
📝 许可证
MIT许可证-有关详细信息,请参阅许可证文件。
🆘 故障排除
常见问题
- 导入错误:确保您已安装了以下软件包
pip install -e . - GitLab连接:验证您的令牌是否具有正确的权限并且尚未过期
- MCP安装:确保Cursor启用了MCP支持
调试模式
# Run with debug logging
export PYTHONPATH=src
python -m gitlab_mcp.server --log-level debug
准备好开始了吗? 看看 安装指南 详细说明!
