简介
如果您听说过由ExecuteAutomation创建的Playwright-MCP-Server,您会知道这是一个基于Claude的模型上下文协议(MCP)构建的工具。它不仅可以自动化浏览器UI交互和网页抓取,现在还能帮助您测试API。您可以使用简单的中文命令来测试GET、POST、PATCH、PUT和DELETE请求,而不必编写任何API专业术语。
如何设置Playwright MCP Server?
设置Playwright-MCP-Server进行API测试只需要两个步骤:
- 安装Claude桌面客户端
- 在Claude_desktop_config.json文件中配置Playwright-MCP-Server NPM包,如下所示:
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["-y", "@executeautomation/playwright-mcp-server"]
}
}
}
如何运行Playwright MCP Server?
配置完成后,只需启动Claude桌面客户端,您将在Attach MCP server
中看到全新的Playwright-MCP-Server。
现在,您可以在Claude桌面客户端中使用简单的中文文本运行以下API测试:
对URL https://api.restful-api.dev/objects 执行POST操作,请求体为:
{
"name": "Apple MacBook Pro 16",
"data": {
"year": 2024,
"price": 2499,
"CPU model": "M4",
"Hard disk size": "5 TB"
}
}
并验证响应是否包含createdAt和id属性
运行高级API测试工作流
在需要使用一个API响应的输出作为另一个API请求输入的场景中,您可以使用Playwright MCP Server的高级交互功能来实现。例如,如果您有一个返回用户ID的API,您可以捕获该用户ID并将其用作请求另一个API的用户详细信息的输入,所有这些都在工作流程中无缝管理。
以下是一个示例API测试:
对URL https://api.restful-api.dev/objects 执行POST操作,请求体为:
{
"name": "Apple MacBook Pro 16",
"data": {
"year": 2024,
"price": 2499,
"CPU model": "M4",
"Hard disk size": "5 TB"
}
}
并验证响应是否包含createdAt和id属性,并将ID存储在变量中供将来参考,比如变量productID
对创建的ProductID使用URL https://api.restful-api.dev/objects/productID 执行GET操作,并验证响应是否包含Id、name、data等属性
对创建的ProductID使用URL https://api.restful-api.dev/objects/productID 执行PUT操作,请求体为:
{
"name": "Apple MacBook Pro 16",
"data": {
"year": 2025,
"price": 4099,
"CPU model": "M5",
"Hard disk size": "10 TB",
"color": "Titanium"
}
}
并验证响应是否包含createdAt和id属性
对创建的ProductID使用URL https://api.restful-api.dev/objects/productID 执行PATCH操作,请求体为:
{
"name": "Apple MacBook Pro 19 (Limited Edition)"
}
并验证响应是否包含updatedAt属性,值为Apple MacBook Pro 19 (Limited Edition)
对于上述测试,Playwright-MCP-Server将给出测试结果,每个API请求的响应都会被测试,并且有一个✅表示测试通过!
在Cursor中使用Playwright MCP
与Claude桌面客户端类似,您也可以在Cursor中配置和使用Playwright MCP。以下是在Cursor中设置的步骤:
- 打开Cursor设置
- 导航到Features部分
- 找到MCP Servers设置
- 点击”Add New MCP Server”
- 选择”Stdio/local”方式
- 输入命令:
npx -y @executeautomation/playwright-mcp-server
- 点击”Add”按钮完成添加
设置完成后,您可以在Cursor的Composer中使用Agent模式,通过自然语言指令来执行API测试,就像在Claude桌面客户端中一样。
实际应用案例
电商平台API测试
假设您正在开发一个电商平台,需要测试产品管理API。使用Playwright MCP,您可以这样描述测试:
创建一个新产品,名称为"智能手表X1",价格为1299元,类别为"电子产品"
获取刚才创建的产品详情并验证名称和价格是否正确
更新产品价格为999元并添加"限时促销"标签
删除该产品并验证是否成功删除
用户认证流程测试
对于需要认证的API,您可以这样描述测试流程:
使用用户名"testuser"和密码"password123"获取认证令牌
使用获取的令牌请求用户个人资料信息
验证返回的用户名是否为"testuser"
使用令牌更新用户手机号为"13800138000"
验证更新是否成功
结论
Playwright MCP Server结合AI的能力,彻底改变了API测试的方式。它使得非技术人员也能参与API测试过程,大大提高了团队协作效率。通过使用自然语言描述测试场景,您可以专注于业务逻辑而不是技术细节,同时保持测试的可靠性和全面性。
无论您是在Claude桌面客户端还是在Cursor中使用Playwright MCP,都能体验到这种革命性的API测试方法带来的便利。
有用的资源
- Playwright-MCP-server源代码:https://github.com/executeautomation/mcp-playwright
- NPM包:https://www.npmjs.com/package/@executeautomation/playwright-mcp-server
- MCP-Get包:https://mcp-get.com/packages/%40executeautomation%2Fplaywright-mcp-server
- 视频演示:https://youtu.be/BYYyoRxCcFE
参考资料:原文链接