关于 Cypress MCP Test Generator
Cypress MCP Test Generator 是一个 MCP 服务,可将自然语言测试场景转成 Cypress 测试,供编写浏览器测试的开发者使用,并将文件放入 cypress/e2e。
主要功能
- 01根据提示生成 Cypress 测试
- 02在 cypress/e2e 创建测试文件
- 03生成导航、输入和断言步骤
- 04处理常见 Cookie 对话框
- 05包含重试机制
适用场景
- 01根据描述起草登录流程测试
- 02创建带结果检查的搜索测试
- 03生成表单提交测试
MCP 相关
该 MCP 服务接收自然语言测试提示词并生成 Cypress 测试,供 MCP 客户端工作流使用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Cypress MCP 测试生成器
此项目提供一个模型上下文协议(MCP)服务,可根据自然语言提示词生成 Cypress 测试。只需用通俗的英语描述测试场景,服务就会生成功能完整的 Cypress 测试。
目录
设置
先决条件
- Node.js(v16 或更高版本)
- npm(随 Node.js 一同安装)
- VS Code
- TypeScript
安装
- 克隆仓库:
git clone <repository-url>
cd your-project-directory
- 安装依赖:
npm install
- 构建项目:
npm run build
- 创建 VS Code MCP 配置:
mkdir -p .vscode
- 创建
.vscode/mcp.json,并填入以下内容(请更新路径,使其与您的系统相符):
{
"servers": {
"cypress-mcp": {
"type": "stdio",
"command": "node",
"args": ["path/to/your/project/build/index.js"]
}
}
}
使用方法
- 在 VS Code 中打开您的项目
- MCP 服务将自动启动
- 打开 VS Code 的命令面板并输入测试描述
- 服务将根据您的描述生成 Cypress 测试
工作原理
- MCP 服务会处理您的自然语言提示词
- 服务会生成适当的 Cypress 命令和断言
- 新测试文件会创建在 cypress/e2e 目录中
- 测试已准备就绪,可使用 Cypress 运行
提示词示例
以下是可供使用的提示词示例:
- 基本导航和搜索:
"Go to google.com and search for 'cypress testing'"
生成的测试将:
- 导航到 Google
- 如有 Cookie 同意提示,则进行处理
- 输入搜索词
- 验证搜索结果
- 登录流程:
"Visit login page, enter username '[email protected]', type password 'password123', click login button, and verify dashboard appears"
生成的测试将:
- 导航到登录页面
- 填写凭据
- 提交表单
- 验证登录成功
- 表单提交:
"Navigate to contact-form.com, fill in name 'John Doe', enter email '[email protected]', type message 'Hello World', click submit button, and verify success message appears"
配置
项目结构
project-root/
├── src/
│ ├── index.ts # MCP server implementation
│ └── cypress/
│ └── commands.ts # Custom Cypress commands
├── cypress/
│ ├── e2e/ # Generated test files
│ └── support/ # Support files
└── .vscode/
└── mcp.json # MCP server configuration
自定义服务
您可以通过修改以下内容来自定义测试生成:
- src/index.ts 中的测试模板
- src/cypress/commands.ts 中的自定义命令
- 错误处理和重试机制
故障排除
常见问题
-
服务无法启动
- 确认 mcp.json 中的路径正确
- 检查 build/index.js 是否存在
- 确保 Node.js 版本兼容
-
测试生成失败
- 检查提示词格式
- 查看服务日志中的错误
- 确保已安装所有依赖
-
VS Code 集成问题
- 重新加载 VS Code 窗口
- 检查 VS Code 的输出面板中是否有错误
- 确认 .vscode/mcp.json 配置正确
错误消息
-
“Server exited before responding”
- 检查 mcp.json 中的文件路径
- 重新构建项目
- 重启 VS Code
-
“Cannot find module”
- 运行 npm install
- 检查 build 文件夹是否存在
- 重新构建项目
日志位置
- 服务日志:VS Code 的输出面板(Cypress MCP Server)
- 生成的测试文件:cypress/e2e 目录
- 构建输出:build 目录
脚本命令
{
"scripts": {
"build": "tsc",
"start": "node build/index.js",
"dev": "tsc --watch",
"cypress:open": "cypress open",
"cypress:run": "cypress run"
}
}
提示词最佳实践
-
描述具体
- 在适用时提供 URL
- 指定输入内容的确切文本
- 提及预期的验证结果
-
使用明确的操作
- 使用 “visit” 或 “go to” 表示导航
- 使用 “type” 或 “enter” 表示输入
- 使用 “click” 表示按钮交互
- 使用 “verify” 或 “check” 表示断言
-
包含验证步骤
- 提及操作后应显示的内容
- 包含预期文本或元素
- 如有需要,指定超时时间
支持
如有问题或疑问:
- 查看故障排除指南
- 查看服务日志
- 检查 VS Code 的输出面板
- 确认文件路径和配置
备注
- 服务会自动处理 Cookie 同意对话框等常见场景
- 生成的测试包含重试机制,以确保可靠性
- 复杂交互可使用自定义命令
- 测试生成时支持 TypeScript
贡献
- Fork 仓库
- 创建功能分支
- 进行修改
- 提交拉取请求
许可证
此项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。