The axe-core-capybara gem provides a chainable axe API for Capybara WebDriver and automatically injects into all frames.


  • In your Gemfile, add the axe-core-capybara gem.
source ""

gem 'axe-core-capybara'
  • Require axe-capybara and use the exported member AxeCapybara.
require 'axe-capybara'

# configure `AxeCapybara`
driver = AxeCapybara.configure(:firefox) do |c|
  # see below for a full list of configuration 
  c.jslib_path = "next-version/axe.js"

# use the driver configuration instance ''



The configure method takes 1 optional argument as a symbol and a configuration block object: configure(*arg, &block)

The optional argument is a browser name for capybara. The valid browser names are:

  • :firefox (default)
  • :chrome

Note: Please ensure respective drivers (eg: geckodriver) are installed in your machine.

The block configuration object contains the below properties:

Property Type Description
jslib_path (Optional) String Path to a custom axe source
skip_iframes (Optional) Boolean Indicate if frames should be excluded from injecting with axe


Note: Refer to contributing guidelines for a full list of setup requirements.

Navigate to the directory of this gem - src/packages/axe-core-capybara

Install dependencies (declared in axe-core-capybara.gemspec):

bundle install

To run tests:

bundle exec rspec