Book Image

RSpec Essentials

By : Mani Tadayon
Book Image

RSpec Essentials

By: Mani Tadayon

Overview of this book

This book will teach you how to use RSpec to write high-value tests for real-world code. We start with the key concepts of the unit and testability, followed by hands-on exploration of key features. From the beginning, we learn how to integrate tests into the overall development process to help create high-quality code, avoiding the dangers of testing for its own sake. We build up sample applications and their corresponding tests step by step, from simple beginnings to more sophisticated versions that include databases and external web services. We devote three chapters to web applications with rich JavaScript user interfaces, building one from the ground up using behavior-driven development (BDD) and test-driven development (TDD). The code examples are detailed enough to be realistic while simple enough to be easily understood. Testing concepts, development methodologies, and engineering tradeoffs are discussed in detail as they arise. This approach is designed to foster the reader’s ability to make well-informed decisions on their own.
Table of Contents (17 chapters)
RSpec Essentials
About the Author
About the Reviewers

Getting started with Capybara and Selenium

We'll talk about why Capybara is useful and how we're going to use it in our tests in some depth. First, let's see how we can use it to control a browser to interact with a web page. We'll do this from irb, the Ruby console.

We'll need to install the Capybara and Selenium/WebDriver gems first:

$ gem install capybara selenium-webdriver

The above may take a couple of minutes, since there are a few dependencies for each gem. We'll also need to make sure Mozilla Firefox is installed on our system. Now we can go into irb and control Firefox with Ruby code!

We first require the Capybara gem, then we set the driver to use Selenium, since the default driver, Rack::Test, cannot control a real browser. Finally, we use the Capybara.visit method to browse to, the website for the Smithsonian Institution in Washington, DC. If all goes well, after you hit Enter for that last command, Firefox should launch and load the URL. You should see a page like...