Skip to content

Latest commit

 

History

History
34 lines (24 loc) · 763 Bytes

feature_test_javascript_in_a_rails_app.md

File metadata and controls

34 lines (24 loc) · 763 Bytes

How to Feature-test JavaScript in a Rails App

Use capybara-webkit. In your Gemfile:

gem "capybara-webkit"

In spec/support/capybara_webkit.rb (for RSpec):

Capybara.javascript_driver = :webkit

Capybara::Webkit.configure do |config|
  config.block_unknown_urls
end

When writing a spec, you must set the :js flag for that test to make use of capybara-webkit. For example, in spec/system/user_signs_in_spec.rb:

describe "Authentication", :js do
  it "signs in a user" do
    create(:user, email: "me@example.com", password: "sekrit")

    sign_in_as email: "me@example.com", password: "sekrit"

    expect(page).to have_text("Welcome!")
  end
end