1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | capybara-skill-lambdatest-agent-skills |
| 作者/维护者 | TestMu AI(原 LambdaTest) |
| 来源链接 | https://github.com/LambdaTest/agent-skills/tree/main/capybara-skill |
| 许可证 | MIT(数据来自 GitHub API) |
| GitHub Stars | 352(数据来自 GitHub API;为整个合集仓库总量,不代表本技能自身热度) |
| Forks | 69(数据来自 GitHub API,同为合集整体口径) |
| 最新版本 | 1.0(SKILL.md front matter 自述,仓库未发布正式 Release) |
| 安装方式 | 见第 10 章 |
2. 功能介绍与亮点
为 Capybara(Ruby 生态主流验收测试 DSL,常与 RSpec 搭配使用)生成生产级 E2E/验收测试代码的技能:把“访问页面→填表→点击→断言”这套验收测试写法固定成可直接套用的模式。
- 核心 DSL 全覆盖:导航(
visit/go_back)、表单交互(fill_in/choose/check/select/attach_file)、元素查找(find/all,支持 CSS/XPath/data-testid)、断言匹配(have_content/have_selector/have_css/have_current_path等)均给出可直接套用的代码示例,并配within作用域限定写法避免元素歧义。 - 深度 Playbook(约 16.5 KB,两份参考文档):Site Prism Page Object 模式(含 section/elements 嵌套)、JavaScript 交互与弹窗处理(
accept_confirm/dismiss_prompt)、DatabaseCleaner 测试隔离策略、GitHub Actions CI 集成(含 Postgres/Redis 服务容器)、12 项调试排错对照表、14 项生产最佳实践清单,以及 4 条反模式提醒(如禁用sleep(5)、改用 Capybara 内置等待机制)。 - 纯参考文档形态:子目录仅含 SKILL.md 与两份 Markdown 参考文档(合计约 20 KB),不含任何可执行脚本。
3. 适用场景
所属分类:工程效率与代码质量
已用 Ruby/Rails 开发、想让 AI 编码助手按统一规范写 Capybara 验收测试(含 Page Object、JS 交互、DatabaseCleaner 隔离、CI 集成)的初中级 Ruby 开发者;也适用于团队想把验收测试写法(选择器优先级、内置等待机制、作用域限定)标准化、减少 Code Review 中反复纠正测试写法成本的场景。核心路径不依赖 TestMu AI 云端服务,纯本地可用。
4. 跨 Agent 兼容性
- Claude Code:✅ 原生支持。SKILL.md 采用标准 Agent Skills 格式,仓库 README 给出配套的官方安装工具。
- Codex:❓ 未验证——仓库 README 列出的受支持助手为 “Claude Code, GitHub Copilot, Cursor, Gemini CLI”,未点名 Codex。
- OpenClaw:❓ 未验证——已抓取材料未提及。
- Hermes Agent:❓ 未验证——已抓取材料未提及。
5. 推荐理由
一份把 Capybara 验收测试从基础 DSL、Page Object 模式、JS 交互与弹窗处理,到 DatabaseCleaner 隔离、CI 集成、反模式规避讲全的技能,附 12 项调试排错表与 14 项最佳实践清单帮助少走弯路,核心路径零付费依赖(Capybara/RSpec/Selenium WebDriver 均为免费开源 Gem)、子目录不含任何脚本,安全面干净。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | TestMu AI(原 LambdaTest)是该领域公认的一线测试云平台:累计融资 1.08 亿美元(8 轮,最近一轮 2024 年 Avataar Venture Partners 领投的 3800 万美元 C 轮),18,000+ 企业客户(含 Microsoft、OpenAI、Nvidia),Forbes 2026-01-12 有专文报道。合集仓库整体 352 stars 属整个合集,不代表本技能自身热度,仓库内检索未见本技能自身的独立第三方 issue/PR 讨论 |
| 可用性 | 8 | 核心功能仅需在 Gemfile 声明 capybara+selenium-webdriver 两个免费开源 Gem 即可用;文档完整含项目配置、Page Object、CI 集成、调试排错等专题示例;子目录最后提交约 2026-02-23(约 5.7 个月前),未见归档或功能性问题 |
| 安全性 | 9 | 子目录不含任何脚本或可执行文件,仅 SKILL.md 与两份 Markdown 参考文档;逐份扫描未见可疑指令或隐藏外发;云端集成示例中的 LT_USERNAME/LT_ACCESS_KEY 均通过环境变量读取、不落盘明文,且该云端路径为可选项,核心 DSL 与本地测试全程不涉及;License(MIT)明确 |
安全检查清单:① Shell 命令——无,不含 scripts/,文档中出现的 bundle exec rspec 属开发者本地标准工具链命令,非技能自带脚本;② 联网外发——核心 DSL 与本地测试无任何外发行为;云端集成(可选)连接 hub.lambdatest.com,目标透明、由用户自主选择是否启用;③ 凭据——仅可选云端路径涉及 LT_USERNAME/LT_ACCESS_KEY,经环境变量传入,未见明文硬编码;④ 可疑指令——SKILL.md 与两份参考文档逐份扫描未发现;⑤ 作者信誉——TestMu AI,融资/客户量/媒体报道均可查证,良好;⑥ License——MIT,明确;⑦ 最近维护——约 2026-02-23,约 5.7 个月前,未见归档。
7. 跟同类 Skills 相比的优势
| 同类项目 | 定位 | 与本技能的差异 |
|---|---|---|
| rspec-skill-lambdatest-agent-skills | 同池姊妹技能,面向 RSpec 单元/规格测试本身(断言、Mock、共享示例组) | 服务的是“怎么写测试用例断言与结构”;本技能服务“怎么模拟用户在浏览器里的操作路径”,两者常搭配使用(Capybara 依赖 RSpec 作为测试运行器),互补而非直接竞争 |
| cucumber-skill-lambdatest-agent-skills | 同池姊妹技能,Gherkin BDD 范式(Given/When/Then 自然语言步骤定义) | 面向“业务可读”的行为驱动测试写法,需额外学习 Gherkin 语法与步骤定义映射;本技能是直接用 Ruby DSL 写验收测试,学习曲线更平缓,两者是同一测试目标下的不同写法范式 |
| selenium-skill-lambdatest-agent-skills | 同池姊妹技能,多语言(Java/Python/C#/JS 等)浏览器自动化底层 API | 提供的是跨语言的底层 WebDriver 操作与显式等待模式;本技能是 Ruby 生态专属的高层验收测试 DSL(本身可基于 Selenium WebDriver 驱动),语法更简洁、专注 Rails/Ruby 项目场景 |
| playwright-e2e-testing-fugazi-test-automation-skills-agents | JavaScript/TypeScript 生态的 E2E 测试技能 | 面向 Node.js 项目的现代浏览器自动化框架;本技能面向 Ruby/Rails 项目,两者服务完全不同的技术栈,非直接竞争关系 |
核心差异化在“Ruby/Rails 生态内验收测试的语法广度与工程化深度”:Site Prism Page Object 模式、JS 交互与弹窗处理、DatabaseCleaner 隔离策略、CI 集成、12 项调试排错表是本技能独有内容。对已在 Ruby/Rails 项目中使用 Capybara、想把验收测试写法规范化并覆盖到 Page Object、异步内容加载等进阶场景的开发者针对性更强。
8. 用户评价
该技能目前在第三方平台尚无具名用户评价;LambdaTest/agent-skills 仓库整体在 GitHub 上有真实的多贡献者协作记录(近期合并的 PR 涉及 accessibility 技能新增、HyperExecute 技能更新、reqnroll 技能新增等,均来自不同贡献者账号)。
9. 其他补充
- 支持语言:Ruby。
- 反模式提醒直接点名常见误区:用
sleep(5)硬等待而非 Capybara 内置的have_css/have_text自动等待、用find(...).click而非自带自动等待的click_link/click_button、用 XPath 而非可读性更好的 CSS 选择器。 - 调试排错表覆盖
Capybara::ElementNotFound、测试单独跑通但一起跑失败(数据库状态串扰)、ChromeDriver 版本不匹配、JS 测试遗漏js: true标记、Capybara::Ambiguous多元素匹配等 12 个常见报错场景及对应修复方法。
10. 安装使用方式
方式一:官方 CLI(仓库推荐)
git clone https://github.com/LambdaTest/agent-skills && cd agent-skills
npx agentskillsforall add https://github.com/LambdaTest/agent-skills.git --skill capybara-skill
方式二:手动复制(本技能不含任何脚本,直接复制目录即可)
git clone https://github.com/LambdaTest/agent-skills
cp -r agent-skills/capybara-skill ~/.claude/skills/
安装后注意事项:复制到位后无需重启、无需注册任何账号;官方 CLI 安装流程会提示配置 TestMu AI 云端账号(LT_USERNAME/LT_ACCESS_KEY),但那是仓库整体安装工具的通用提示,若只需本地浏览器测试可完全跳过该步骤(方式二天然不涉及)。Agent 会在识别到 “Capybara”、“visit”、“fill_in”、“click_button”、“Ruby E2E” 等触发词时自动读取本技能内容。
11. 注意事项
- 本技能面向“已经决定用 Capybara”的 Ruby/Rails 项目;示例中的
site_prism、capybara-screenshot、factory_bot、database_cleaner均为需要自行在项目 Gemfile 中声明的第三方 Gem。 - 内容聚焦 Capybara DSL、Page Object 与测试模式本身,不涉及 Rails 应用本身的架构设计或 RSpec 单元测试写法(后者由同池 rspec-skill 覆盖)。
- 子目录最后提交约在 2026-02-23,约 5.7 个月前,暂未发现功能性问题,但关注长期维护节奏的团队可留意后续更新频率。