MCP Puppeteer 测试与 Roo-Code 和 Augment 集成
本项目是一个基于 Node.js 的程序,旨在自动设置 MCP 服务器并在目标网站上运行基于 Puppeteer 的浏览器自动化测试。它支持包括 React 应用在内的动态网站,执行错误检测、可用性检查,并记录详细的日志,以便使用 LLM(大语言模型)进行进一步分析和修复。该程序通过 Model Context Protocol (MCP) 与 VSCode AI 扩展(如 Roo-Code 和 Augment)集成。
功能特性
- 实现 MCP 服务器,通过 MCP 协议暴露资源并接受命令
- 使用 Puppeteer 进行登录、导航、自主探索和分析的自动化
- 支持 React 和动态内容
- 全面的错误检测和日志记录
- 与 Roo-Code 和 Augment 双向通信,支持 AI 引导的测试
- 通过
config.json
或首次运行时的交互式提示轻松配置
- 结构化输出,便于 LLM 处理和 AI 扩展集成
安装步骤
- 克隆仓库:
- 安装依赖:
- 运行程序:
- 首次运行时,如果未找到
config.json
,程序将提示您输入登录 URL、凭证、选择器、目标 URL 和 MCP 服务器端口。
- 配置将保存到
config.json
,供后续运行使用。
使用方法
- 程序启动一个 MCP 服务器,监听来自 AI 扩展(如 Roo-Code 和 Augment)的命令。
- 使用 AI 扩展发送命令(例如
startTest
)以启动测试。
- 程序执行登录和网站的自主探索/测试。
- 日志、测试结果、截图和其他数据作为 MCP 资源暴露,供 AI 扩展访问。
- AI 扩展可以分析这些数据并提供指导或自动修复建议。
MCP 服务器集成
- MCP 服务器在
mcp-server.js
中实现,并在index.js
中集成。
- 它遵循 MCP 协议规范,暴露 HTTP 端点以提供资源和接受命令。
- 兼容 Roo-Code 和 Augment 的 MCP 功能,如
access_mcp_resource
。
故障排除
- Puppeteer 运行时使用
--no-sandbox
和--disable-setuid-sandbox
标志以确保兼容性。
- 确保配置期间提供的选择器与目标网站元素匹配。
- 验证 MCP 服务器端口的可用性。
未来改进计划
- 实现 AI 引导的自主探索和测试启发式算法。
- 增强 MCP 协议支持,以便与 AI 扩展进行更丰富的交互。
- 添加更详细的日志记录和错误分析。
- 提供 Roo-Code 和 Augment 集成的示例工作流。
贡献指南
欢迎 Fork 并提交 Pull Request 以改进本项目。
许可证
MIT 许可证
- Author:waytomcp
- URL:https://www.waytomcp.com/article/shipdocs/vibe-coding-mcp-end-2-end-testing
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!