Rails Test Prescriptions is a comprehensive guide to testing Rails applications, covering Test-Driven Development from both a theoretical perspective (why to test) and from a practical perspective (how to test effectively). It covers the core Rails testing tools and procedures for Rails 2 and Rails 3, and introduces popular add-ons, including RSpec, Shoulda, Cucumber, Factory Girl, and Rcov.

Please see our New Edition updated for Rails 4.

Buy Now

Select a DRM-free Format:

In Stock
In Stock
In Stock
Buy the eBook and get these DRM-free formats delivered immediately:
  • epub (for iPhone/iPad, Android, eReaders)
  • mobi (for Kindle)
  • PDF
We can automatically send them to your Kindle, and your Dropbox. (You'll need to log in to enable these options.)
 

About this Book

  • 368 pages
  • Published:
  • Release: P1.0 (2011-02-16)
  • ISBN: 978-1-93435-664-7

Your Ruby on Rails application is sick. It’s got bugs. Nobody remembers what that tricky piece of code was supposed to do, and nobody can tell what it actually does. Deadlines are looming, but every time you make the slightest change to the code, something else breaks.

You need Test-Driven Development (TDD), a proven process for improving the design, maintainability, and long-term viability of software. In TDD, the tests come first, and then code is written to match the expectation of the test. Using TDD means writing better code faster.

Ruby on Rails has unparalleled support for TDD. In addition to the tools that Rails has built-in, a large and thriving testing community adds new tools at an accelerating rate. Rails Test Prescriptions is your guide to the entire Rails testing ecosystem.

Containing both practical code examples and discussion of why testing works, this book starts with the most basic features delivered as part of core Ruby on Rails. Once you’ve integrated those features into your coding practice, you’ll want to use popular third-party testing tools such as RSpec, Shoulda, Cucumber, Factory Girl, and Rcov. Rails Test Prescriptions will show you how to use these tools and when they are appropriate. Rails Test Prescriptions covers both Rails 2 and Rails 3.

If you are a Rails programmer who tests code, this book is an invaluable guide to the latest in available testing tools. If you are a Rails programmer who doesn’t test code, then start testing immediately: this book can help.

What You Need

Rails 2 or Rails 3

Contents and Extracts

Full Table of Contents

  • Getting Started with Testing in Rails
    • The Goals of Automated Developer Testing excerpt
    • The Basics of Rails Testing
    • Writing Your First Tests excerpt
    • TDD, Rails Style
  • Testing Application Data
    • Testing Models with Rails Unit Tests
    • Creating Model Test Data with Fixtures and Factories
    • Using Mock Objects excerpt
  • Testing User-Facing Layers
    • Testing Controllers with Functional Tests
    • Testing Views
    • Testing JavaScript and Ajax
  • Testing Framework Extensions
    • Write Cleaner Tests with Shoulda and Contexts
    • RSpec
  • Testing Everything All Together
    • Testing Workflow with Integration Tests
    • Write Better Integration Tests with Webrat and Capybara
    • Acceptance Testing with Cucumber
  • Testing Your Tests
    • Using Rcov to Measure Test Coverage
    • Beyond Coverage: What Makes Good Tests?
    • Testing a Legacy Application
    • Performance Testing and Performance Improvement
  • Appendices
    • Sample Application Setup

About the Author

Noel Rappin is a Senior Consultant at Obtiva. A Rails developer for five years, Noel has spoken at RailsConf and Windy City Rails, and is the author of Professional Ruby on Rails from Wrox Press. A blog relating to this book can be found at http://www.railsrx.com.

Upcoming Author Events

  • 2014-08-21: Noel Rappin
    (All Day) D is for Driven: Using Testing to Write Better Rails Applications -- full day workshop (Madison Ruby, Madison WI)

Comments and Reviews

  • Testing is a given in the Rails world, but the varied options can be daunting if you are just starting to learn the framework. Noel provides a solid tour of the options and techniques for testing a Rails application that will help guide you past some of the initial dark corners. If you are entering the world of Ruby on Rails, I’d recommend keeping a copy of Rails Test Prescriptions at hand.

    —Corey Haines Software Journeyman
  • Noel has dispensed a fantastic collection of prescriptions for all kind of testing maladies. Whether you are a budding intern, or a highly specialized surgeon, this book will provide you with the information you need to improve your testing health.

    —Christopher Redinger Principal Relevance, Inc.
  • If you are comfortable working with Rails, yet have no experience writing tests for it, this book is an excellent resource for getting up to speed on the most successful tools used to test drive your development.

    —Adam Williams (@aiwilliams)
  • Rails Test Prescriptions is a great resource for anyone interested in getting better at testing Rails applications. New readers will find many helpful guides, and experienced readers will discover many lesserknown tips and tricks.

    —Nick Gauthier Developer SmartLogic Solutions
  • Rails Test Prescriptions presents a nuanced and unbiased overview of the tools and techniques professionals use to test their Rails apps every day. A must-read for any Rails developer, whether you’ve never written a single test or you’ve written thousands.

    —David Chelimsky Senior Software Engineer DRW Trading
  • This a must-have book for those new to testing on a team that thinks, “We don’t have time for testing,” and for experienced developers looking to round out their testing skills. If you want to write better code, deploy with confidence, and accelerate your team’s velocity, you should read this book!

    —John McCaffrey Rails Developer/Project Manager Railsperformance.blogspot.com