用说话的方式写测试用例?Claude Code 现在能替你跑 E2E 了
用说话的方式写测试用例?Claude Code 现在能替你跑 E2E 了
你有没有这种感觉——写 E2E 测试太烦了,光维护 selector 就耗掉一半时间?有时候产品加个按钮,原来的测试直接红一片。
现在有个新思路:测试用例不用写代码,用自然语言描述就行。
这个工具叫 claude-code-test-runner,GitHub 上 24 颗星,是一个基于 Claude Code 的端到端自动化测试运行器。它的工作方式是:
你写 JSON,Claude Code 当测试执行者。
具体来说,你把测试步骤写成自然语言描述,比如:
[
{
"step": "打开登录页面",
"expected": "页面包含用户名和密码输入框"
},
{
"step": "输入用户名 admin 和密码 wrongpass",
"expected": "显示错误提示"
}
]
Claude Code 收到这个 JSON,就会在浏览器里一步步执行,用它的理解力去找元素、判断页面状态、自动等待加载、处理网络抖动——而不是死板地对照 selector。
和传统测试框架的本质区别:
传统 Playwright/Cypress 靠的是 locator.click('#submit-btn'),一旦按钮加了 data-testid 或者改了 class,测试就挂。Claude Code 的做法是”理解”:它看到的是一个”提交按钮”,而不是 #submit-btn 这个字符串。页面 UI 小幅调整,它不会一惊一乍地失败。
这套东西还内置了 Playwright MCP,测试结果可以导出 CTRF 格式的 JSON 报告,也可以出 Markdown 摘要,带截图trace,用 Docker 跑也行,直接接 GitHub Actions 也没问题。
谁适合用?
如果你正在用 Claude Code 做开发,这个工具可以直接嵌进你的 CI 流程——每个 PR 跑一组自然语言 E2E 检查,不用再手写和维护那些脆弱的 selector。对前端团队来说,这也是一种”用 AI 测 AI 写的页面”的玩法。
怎么上手:
cd cli && ./init.dev.sh
bun run build
./dist/cc-test-runner --testsPath=./tests.json
需要提供 ANTHROPIC_API_KEY 环境变量,或者用 Claude Code 的 OAuth Token。官方还提供了 Docker 镜像,GitHub Actions 里一行命令就能跑起来。
GitHub 链接附在文后,感兴趣可以去读 README,样例测试文件也在仓库里。算是近期看到的一个挺有意思的”Claude 原生测试”思路,值得一试。
GitHub: https://github.com/firstloophq-archive/claude-code-test-runner
评论区
登录后可评论。