RubyFlow The Ruby and Rails community linklog

Using Capybara to test JavaScript that makes HTTP requests

We’ve seen lots of Rails app test suites that use WebMock to disable HTTP requests. There is also good tools like VCR and techniques like Fakes available for other HTTP requests made from Ruby.

However, modern apps often make HTTP requests to external services from Javascript. We often use services like KISSMetrics, Stripe, Github, LinkedIn, or Facebook from client-side Javascript.

When we use a Capybara driver like Capybara Webkit or Poltergeist, those HTTP requests are no longer stubbed. This post shows how to re-use the Ruby Fakes (written in Sinatra) from the Capybara-with-Javascript-driver acceptance test environment.

Post a comment

You can use basic HTML markup (e.g. <a>) or Markdown.

As you are not logged in, you will be
directed via GitHub to signup or sign in