SuperAPI AI 工具集

capybara-skill

测试与质量

查看项目

更新于 10-15 15:18

技能介绍

用途

Capybara 是 Ruby 生态中用于 Web 应用验收测试的 DSL(领域特定语言),本技能用于生成基于 Capybara 与 RSpec 集成的端到端(E2E)测试代码。当用户提到 Capybara、visit、fill_in 等关键词时,可借助该技能产出可运行的测试脚本。

主要能力

  • 基础测试结构:通过 require 'capybara/rspec' 与 RSpec.describe ..., type: :feature 组织功能测试,覆盖登录成功与失败等典型流程。
  • 导航操作:visit、go_back、go_forward。
  • 交互操作:fill_in、choose、check、uncheck、select、attach_file、click_button、click_link、click_on。
  • 元素查找:find 支持 CSS 选择器、[data-testid="x"]、XPath,all 可统计元素数量。
  • 断言匹配器:have_content、have_selector、have_css、have_button、have_field、have_link、have_current_path、have_no_content 等。
  • 作用域限定:使用 within 在表单或表格等区域内执行操作与断言。
  • 云平台执行:通过注册自定义驱动,将测试运行在 TestMu AI(LambdaTest)云端的远程浏览器上,支持视频录制等能力。

使用方式

  1. 在 Gemfile 中加入 gem 'capybara' 与 gem 'selenium-webdriver'。
  2. 编写功能测试(feature spec),使用上述 DSL 与匹配器。
  3. 运行命令:bundle exec rspec spec/features/。
  4. 如需云端执行,参考 reference/cloud-integration.md 与 shared/testmu-cloud-reference.md,并注册 LambdaTest 驱动(示例中通过 LT_USERNAME、LT_ACCESS_KEY 环境变量传入凭据,远程地址为 https://hub.lambdatest.com/wd/hub)。

适用场景

  • Web 应用的验收测试与端到端测试。
  • 登录流程、JavaScript 交互、模态框、异步内容等场景。
  • 使用 SitePrism 进行页面对象封装。
  • API 请求测试(带认证头与 JSON 断言)。
  • 数据库清理(DatabaseCleaner 事务/截断策略)。
  • 自定义匹配器与辅助方法(如 sign_in、expect_flash)。
  • CI/CD 集成(如 GitHub Actions 配合 Postgres、Redis、Chrome)。
  • 调试常见问题与遵循最佳实践清单。

限制

资料中未提供关于收费、价格、平台支持范围、性能效果或具体版本要求的信息,暂未提供。