Book Image

Application Testing with Capybara

By : Matthew Robbins
Book Image

Application Testing with Capybara

By: Matthew Robbins

Overview of this book

<p>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.</p> <p>"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.</p> <p>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.</p>
Table of Contents (12 chapters)

Credits

Author

Matthew Robbins

Reviewers

Yavor Atanasov

Graham Lyons

Daniel Morrison

Acquisition Editor

Aarthi Kumaraswamy

Commissioning Editor

Poonam Jain

Technical Editors

Hardik B. Soni

Krutika Parab

Copy Editors

Adithi Shetty

Sayanee Mukherjee

Alfida Paiva

Project Coordinator

Sherin Padayatty

Proofreaders

Clyde Jenkins

Christopher Smith

Indexer

Priya Subramani

Graphics

Ronak Dhruv

Production Coordinator

Arvindkumar Gupta

Cover Work

Arvindkumar Gupta