使用说明
QA自动化调度程序-MCP服务器
本地MCP(Model Context Protocol)服务器,将QA提示作为资源公开,并为使用PlayWright生成和迁移自动化测试提供工具。
🎯 这是什么?
该项目将您的QA提示符集合转换为 MCP服务器本地 可由以下人员消费:
- ✅ GitHub Copilot (通过VSCode)
- ✅ 克劳德桌面
- ✅ 任何MCP客户
利润
- 集中访问:您所有可用的提示作为MCP资源
- 自动化工作流:运行完整流的工具(Excel→测试、Selenium→PlayWright等)
- 综合验证:自动验证测试结构
- 上下文:维护交互之间的上下文
🚀 快速安装
1.安装依赖项
# Opción 1: Con pip
pip install mcp playwright pytest pytest-playwright pandas openpyxl pyyaml jinja2
# Opción 2: Con el proyecto
pip install -e .
2.不稳定的剧作家浏览器
playwright install chromium
3.在vscode/claude桌面上配置
对于Claude桌面:
编辑 ~/AppData/Roaming/Claude/claude_desktop_config.json (Windows)o ~/Library/Application Support/Claude/claude_desktop_config.json (Mac):
{
"mcpServers": {
"qa-automation-dispatcher": {
"command": "python",
"args": [
"c:\\Users\\crisq\\Documents\\MCP2\\mcp-server.py"
]
}
}
}
致GitHub副总裁(vscode):
添加到您的 settings.json (用户设置):
{
"github.copilot.advanced": {
"mcp": {
"servers": {
"qa-automation-dispatcher": {
"command": "python",
"args": ["c:\\Users\\crisq\\Documents\\MCP2\\mcp-server.py"]
}
}
}
}
}
📖 详细指南:Ver VSCODE_SETUP.md 有关逐步说明。
📄 示例文件: vscode-settings-example.json
4.Reiniciar VSCode/Claude桌面
📚 可用资源
服务器将您的所有提示作为MCP资源公开:
| URI | 描述 |
|---|---|
prompt://copilot_instructions |
首席协调员 |
prompt://page_object_model |
POM结构 |
prompt://playwright_mcp_server |
用MCP服务器扫描 |
prompt://pytest_marks |
强制性标记 |
prompt://logger_reporting |
测井系统 |
prompt://estrategia_selectores |
选择器策略 |
prompt://generacion_excel |
从Excel生成 |
prompt://migracion_external |
外部框架迁移 |
prompt://troubleshooting |
故障排除指南 |
prompt://lessons_learned |
知识库 |
| 哦。..(以及更多) |
🛠️ 工具(工具)
1. dispatch_workflow
执行完整的工作流并为Copilot生成指令。
可用工作流:
excel_to_tests-从Excel生成测试selenium_migration迁移 Selenium 测试cypress_migration-Migrar测试赛普拉斯junit_migration迁移 JUnit 测试new_project-创建新项目create_page_object-Crear页面对象troubleshoot_test-测试故障排除
使用示例:
# En Claude/Copilot:
"Usa dispatch_workflow con workflow_type='selenium_migration'
y input_description='Login test from old Selenium suite'"
2. get_prompt_instructions
获取特定于提示符的指令。
例子:
"Usa get_prompt_instructions con prompt_name='page_object_model'
y section='Buenas Prácticas'"
3. validate_test_structure
验证测试是否符合所有标准(POM、标记、日志等)。
例子:
"Valida este test: [código del test]"
4. generate_migration_plan
从外部框架生成详细的迁移计划。
例子:
"Genera un plan de migración desde Selenium para un test de login"
💡 使用示例
例1:迁移硒测试
Usuario: "Necesito migrar este test de Selenium a Playwright"
[Pega código Selenium]
Copilot/Claude (usando MCP):
1. Llama a dispatch_workflow(workflow_type="selenium_migration", ...)
2. Recibe instrucciones estructuradas
3. Lee los prompts necesarios via prompt://migracion_external, etc.
4. Genera el código Playwright siguiendo TODAS las reglas
5. Valida con validate_test_structure
例2:从Excel生成测试
Usuario: "Tengo un Excel con 10 casos de prueba, genera los tests"
Copilot/Claude (usando MCP):
1. Llama a dispatch_workflow(workflow_type="excel_to_tests", ...)
2. Lee prompt://generacion_excel
3. Lee prompt://page_object_model
4. Genera Page Objects y tests
5. Aplica marks, logging, etc.
示例3:创建新页面对象
Usuario: "Necesito un Page Object para la página de checkout"
Copilot/Claude (usando MCP):
1. Llama a dispatch_workflow(workflow_type="create_page_object", ...)
2. Lee prompt://page_object_model
3. Lee prompt://estrategia_selectores
4. Sugiere usar Playwright MCP Server para validar selectores
5. Genera el Page Object siguiendo estructura POM
🔧 发展
项目结构
MCP2/
├── mcp-server.py # Servidor MCP principal
├── pyproject.toml # Configuración del proyecto
├── prompts/ # Todos tus prompts
│ ├── copilot-instructions.md
│ ├── page-object-model.prompt.md
│ └── ...
├── dispatcher/ # (Futuro) Lógica del dispatcher
├── helpers/ # (Futuro) Utilidades
├── pages/ # Page Objects generados
├── tests/ # Tests generados
└── reports/ # Reportes de ejecución
手动运行服务器
python mcp-server.py
服务器根据MCP协议通过STDIO(STDIN/STDOUT)进行通信。
测试服务器
# Instalar dependencias de desarrollo
pip install -e ".[dev]"
# Ejecutar tests
pytest tests/
📖 Detallados工作流程
Excel→ 剧作家测试
- 输入:带有测试用例的Excel文件
- 应用提示:
generacion_excel-生成过程extraer_casos-案例提取page_object_model-POM结构estrategia_selectores选择器pytest_marks-强制性标记logger_reporting-日志记录
- 输出:页面对象+测试+报告
硒/柏树/JUnit→ 剧作家
- 输入:外部测试代码
- 应用提示:
migracion_external-迁移过程page_object_model-POM结构estrategia_selectores选择器pytest_marks-标记logger_reporting-日志记录troubleshooting-如果有问题
- 输出:页面对象+测试迁移+迁移日志
新项目
- 输入:项目名称
- 应用提示:
generate_boilerplate-锅炉板专用estructura_proyecto-结构page_object_model-POM基底pytest_marks-配置标记logger_reporting-测井系统principios_qa-一般原则
- 输出:具有基本结构的完整项目
🎯 下一步
- 测试服务器:在Claude Desktop或VSCode中配置
- Ejecutar工作流程:用实际案例测试
- 扩展功能:根据需要添加更多工具
- 与IC/CD集成:在管道中使用调度器
🤝 争议
这是你的个人项目,但如果你想扩展它:
- 在中添加新工作流
WORKFLOWS - 在中创建新工具
list_tools() - 扩展验证
validate_test_structure()
📝 注释
- 所有提示 英语
/prompts自动作为资源公开 - Los工作流 可以通过编辑自定义
WORKFLOWS英语mcp-server.py - 自我验证 目前是基本的,可以通过AST分析进行扩展
- 服务器 它是无状态的-每个电话都是独立的
🐛 故障排除
服务器没有启动
# Verificar que Python y dependencias estén instaladas
python --version
pip list | grep mcp
vscode/claude看不到服务器
- 验证路由
mcp-settings.json是正确的 - 完全重新启动应用程序
- 在开发控制台中检查日志
洛斯提示不要开车
- 检查
/prompts存在并拥有文件 - 验证读取权限
- 检查服务器日志
问题? 直接使用MCP服务器查询提示😉