如果你知道由 ExecuteAutomation 创建的这个名为 Playwright-MCP-Server 的工具。这个工具基于 Claude 的 MCP(模型上下文协议)。它可以自动化浏览器 UI 交互和抓取网页,现在还能帮你测试 API。你可以用简单的英文命令来测试 GET、POST、PATCH、PUT 和 DELETE 请求。
阅读 Playwright MCP Server 的官方文档 📚,可以从这里开始 Playwright MCP Server。
如何搭建Playwright MCP服务器?好吧,你只需要设置两样东西,在用Playwright-MCP-Server跑API测试前。
- Claude 桌面客户端
- 在 _Claude_desktopconfig.json 文件中进行如下配置 Playwright-MCP-Server NPM 包,如下
{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["-y", "@executeautomation/playwright-mcp-server"]
}
}
}
Playwright MCP服务器怎么运行?
配置完成后,您就可以启动您的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型号": "M4",
"硬盘容量": "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型号": "M4",
"硬盘容量": "5 TB"
}
}
并验证响应中是否包含createdAt和id属性,并将ID存入一个变量,例如命名为productID以备后用
使用URL https://api.restful-api.dev/objects/productID 对创建的ProductID执行GET操作,并验证响应包含Id、name、data等属性
使用URL https://api.restful-api.dev/objects/productID 对创建的ProductID执行PUT操作,请求体为
{
"name": "Apple MacBook Pro 16",
"data": {
"年份": 2025,
"price": 4099,
"CPU型号": "M5",
"硬盘容量": "10 TB",
"color": "Titanium"
}
}
并验证响应中是否包含createdAt和id属性
执行PATCH操作,使用URL https://api.restful-api.dev/objects/productID,请求体为
{
"name": "Apple MacBook Pro 19 (有限版)"
}
并验证响应中是否包含updatedAt属性,其值为Apple MacBook Pro 19 (有限版)
对于这个测试,Playwright-MCP-Server 会给出以下结果,
你看,每个 API 请求的回复都已通过测试,并且有一个 ✅,说明测试通过了!
视频展示这里有一个关于刚才讨论的视频(视频链接: https://youtu.be/BYYyoRxCcFE),大家可以看一下。
这个视频链接:https://youtu.be/BYYyoRxCcFE,它是一个有趣的YouTube视频。
一个有用的资源列表查看来自 https://github.com/executeautomation/mcp-playwright 的 Playwright-MCP-server 源码
来自 @executeautomation/playwright-mcp-server 的这个 NPM 包 (访问网址为 https://www.npmjs.com/package/@executeautomation/playwright-mcp-server)
从 MCP-Get 网站找到这个包 https://mcp-get.com/packages/%40executeautomation%2Fplaywright-mcp-server