Application Testing with Capybara

More Information
  • Install and configure Capybara
  • Use Capybara and Cucumber to test scenarios
  • Exploit Capybara’s API for interacting with web pages
  • Employ Capybara to test Rack applications implemented using Rails or Sinatra
  • Handle asynchronous JavaScript
  • Apply Capybara to test “black box” components such as Flash or HTML5 Canvas, Audio, and Video
  • Practise Capybara outside Cucumber in bespoke frameworks
  • Use Capybara with popular Ruby test frameworks
  • Explore advanced driver configuration
  • Work with alternative drivers such as Capybara-Webkit and Capybara-Mechanize

Everybody understands why implementing automated tests is important but at the same time developing them can be costly and time consuming, and tests can be also be fragile and prone to false positives. By using Capybara, you can develop robust tests quickly and run them in multiple drivers ensuring greater re-use; Capybara’s API also extends the human readable style made popular by frameworks such as Cucumber and RSpec.

"Application Testing with Capybara" takes you from installing the gem to getting up and running with a YouTube search scenario within the first two chapters. We then look deeper into the API, using Rack-Test for applications built with Rails or Sinatra and see how to test handle Asynchronous JavaScript and “black box” components such as Flash. Finally, we consider some advanced topics such as looking at alternatives to Selenium and accessing the native driver directly.

This book takes you from the basics of installing Capybara, through its API and onto advanced topics. You will learn how to use Capybara’s extensive API to interact with your application, covering topics such as navigation, filling in forms, and querying your page for expected content. Beyond this we will consider why Capybara is so well suited to testing applications written in frameworks such as Rails and Sinatra. We will look at strategies for validating seemingly “untestable” components such as HTML5 or Flash by building out a testable API. Finally we will turn you into a Capybara ninja by covering advanced topics such as accessing functionality in the base driver, advanced driver configuration, and alternative flavours of drivers outside Selenium and Rack-Test.

  • Learn everything to become super productive with this highly acclaimed test automation library
  • Using some advanced features, turn yourself into a Capybara ninja!
  • Packed with practical examples and easy-to-follow sample mark-up and test code
Page Count 104
Course Length 3 hours 7 minutes
ISBN 9781783281251
Date Of Publication 22 Sep 2013


Matthew Robbins

Matthew Robbins is an experienced developer in test, having spent many years wrestling with commercially available test automation tools. He has spent the last five years immersed in developing robust test automation frameworks using open source tools. He worked extensively with the BBC developing test automation frameworks and tools across their web platform and continues to work in the media industry for other high-profile broadcasters. Aside from test automation, he is passionate about becoming more productive in Vim and learning about web browser internals. He also regularly blogs at