OSS TanbouSign in with GitHub

A Ruby acceptance-testing library for exercising web applications through user-oriented interactions

About these scores

OSS scale score is an unbounded metric that log-compresses and weights Stars, Watchers, Forks, and Contributors. Discovery score is the current OSS scale score minus the score at discovery. Update pace is commits in the last 30 days, growth momentum is the OSS scale score difference within the recent observation window, and OSS health is a 0–100 rating based on available recency, Community Health, and release data.

Stars
10,177
Primary language
Ruby
License
MIT
Repository last updated
Oct 5, 2026
On this page

Overview

Capybara is a Ruby library for testing web applications through user-facing actions such as following links, filling forms, and checking page text. It can exercise Rack applications without a browser and use the same interaction model with browser drivers.

Features and best fit

Based on official documentation; not hands-on tested · Content checked:

Key features

What it provides

The built-in rack_test driver can visit a local Rack application and assert content and link navigation. Its waiting finders also support asynchronous interfaces when paired with a capable driver.

Sources: [1][2][3]

Best fit

Where it fits

It fits Rails feature tests and other user journeys that should remain readable while crossing the HTTP boundary. The pinned example navigates from Home to Greeting in an in-memory Rack app.

Sources: [1][2]

Before adoption

What to verify before adoption

Version 3.40.0 requires Ruby 3.0 or later. rack_test does not execute JavaScript, so dynamic pages need another driver such as Selenium. GitHub and the pinned LICENSE report MIT.

Sources: [3][4][5]

Official sources

  1. [1]teamcapybara/capybara README at 3.40.0(2026-10-05)
  2. [2]Capybara official documentation(2026-10-05)
  3. [3]Capybara fixed version source(2026-10-05)
  4. [4]teamcapybara/capybara License.txt at 3.40.0(2026-10-05)
  5. [5]teamcapybara/capybara GitHub metadata(2026-10-05)
Supplemental curator note

A strong fit when user journeys should read naturally in Ruby tests. Start with a small Rack app that needs no external browser and verify navigation plus visible content.

Try it in 3 steps

  1. 1

    Create a pinned test project

    Requires Ruby 3.0 or later and Bundler. Create a temporary project pinned to Capybara 3.40.0.

    demo=$(mktemp -d "${TMPDIR:-/tmp}/capybara-demo.XXXXXX") && cd "$demo" && printf '%s\n' 'source "https://rubygems.org"' 'gem "capybara", "3.40.0"' 'gem "minitest", "~> 5.0"' > Gemfile
  2. 2

    Install the dependencies

    Install dependencies under vendor/bundle inside the temporary project.

    bundle config set path vendor/bundle && bundle install
  3. 3

    Verify a Rack user journey

    Visit an in-memory Rack app, follow Greeting, and require Minitest to find Hello Ada.

    printf '%s\n' 'require "capybara/minitest"' 'require "minitest/autorun"' 'class JourneyTest < Minitest::Test' ' include Capybara::DSL' ' include Capybara::Minitest::Assertions' ' def setup' ' Capybara.app = ->(env) { env["PATH_INFO"] == "/hello" ? [200,{"content-type"=>"text/html"},["<h1>Hello Ada</h1>"]] : [200,{"content-type"=>"text/html"},["<a href=/hello>Greeting</a>"]] }' ' end' ' def test_journey' ' visit "/"; click_link "Greeting"; assert_text "Hello Ada"' ' end' 'end' > demo.rb && bundle exec ruby demo.rb
Check the official README

Growth

Growth trends · Last 30 days

10,177 Stars

Trend data is still being collected.

Development activity

Last 90 days · weekly

Commits (last 30 days)
2
Open PRs
20

Development activity is still being collected.

Built with

Categories and tags

Categories

GitHub data

GitHub dataView detailed GitHub data

GitHub Topics

  • hacktoberfest
Stars
10,177
Forks
1,470
Watchers
211
Open issues
5
Contributors
325
Owner type
Organization
Primary language
Ruby
License
MIT
Repository last updated
Oct 5, 2026
Write a related article

Share a guide or use case for this OSS in Markdown. Articles are published after administrator approval.

Report incorrect information

Tell us if any listing information is incorrect or outdated.

After reading this page, do you know what to do next?