Your customers want rock-solid, bug-free software that does exactly what they expect it to do. Yet they can’t always articulate their ideas clearly enough for you to turn them into code. The Cucumber Book dives straight into the core of the problem: communication between people. Cucumber saves the day; it’s a testing, communication, and requirements tool – all rolled into one.

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

  • 336 pages
  • Published:
  • Release: P3.0 (2014-03-28)
  • ISBN: 978-1-93435-680-7

Matt Wynne and Aslak Hellesøy show you how to express your customers’ wild ideas as a set of clear, executable specifications that everyone on the team can read. You’ll learn how to feed those examples into Cucumber and let it guide your development. You’ll build just the right code to keep your customers happy, and not a line more. Although it was born in the Ruby community, you can use Cucumber to test almost any system, from a simple shell script or Perl script, to web applications written in PHP, Java, or any platform.

In Part 1, you’ll get started by using the core features of Cucumber and working with Cucumber’s Gherkin DSL to describe—in plain language—the behavior your customers want from the system. Then you’ll write Ruby code that interprets those plain-language specifications and checks them against your application. If you’re new to Cucumber, this part of the book will teach you everything you need to know to get started.

In Part 2, you’ll consolidate the knowledge you’ve gained with a worked example, where you’ll learn more advanced Cucumber techniques. You’ll also learn how to test asynchronous systems and systems that use a database.

In Part 3, you’ll find a selection of recipes for some of the most difficult and commonly seen situations the authors have helped teams solve. With these patterns and techniques, you’ll learn how to test Ajax-heavy web applications with Capybara and Selenium, REST web services, Ruby on Rails applications, command-line applications, legacy applications, and more.

Written by the creator of Cucumber and one of its most experienced users and contributors, The Cucumber Book is an authoritative guide that will give you and your team all the knowledge you need to start using Cucumber with confidence.

What You Need: Windows, Mac OS X (with XCode) or Linux Ruby 1.9.2 and upwards

Audience: This book contains comprehensive Cucumber information for beginning to advanced Cucumber users. If you’re a developer planning to use Cucumber with RSpec, you might also want to look at The Rspec Book.

Contents and Extracts

Full Table of Contents

  • Cucumber Fundamentals
    • Why Cucumber? excerpt
    • First Taste
    • Gherkin Basics excerpt
    • Step Definitions: From the Outside
    • Expressive Scenarios
    • When Cucumbers Go Bad
  • A Worked Example
    • Step Definitions: On the Inside excerpt
    • Support Code
    • Dealing with Message Queues and Asynchronous Components
    • Databases
  • Cucumber Applied
    • The Cucumber Command-Line Interface
    • Testing a REST Web Service
    • Adding Tests to a Legacy Application excerpt
    • Bootstrapping Rails
    • Using Capybara to Test Ajax Web Applications
    • Testing Command Line Applications with Aruba

About the Author

Matt Wynne works as an independent consultant, helping teams like yours learn to enjoy delivering software to the best of their abilities. In his spare time he is a core developer on the Cucumber project, and he blogs at mattwynne.net and tweets as @mattwynne.

Aslak Hellesøy is the founder of the Cucumber project and works as a senior developer with DRW Trading in London, writing very fast and very smart software in several different programming languages. In his previous job he was the Chief Scientist of BEKK Consulting in Norway. Aslak tweets as @aslak_hellesoy.

Comments and Reviews

  • To those of you wondering how to use Cucumber effectively, The Cucumber Book is the answer. Not content to write just a testing book, Aslak and Matt have packed it with practical insights on many aspects of software development. Studying this book will make you a better software developer.

    —Pat Maddox, B.D.D.M.F. RSpec Core team
  • Teams can use Cucumber to get a better understanding of what software to build for their customers. In this book, Aslak and Matt do a brilliant job explaining how you get started with Cucumber with plenty of easy-to-follow examples.

    —Rachel Davies Author, "Agile Coaching"
  • I devoured the Cucumber book on a train ride from Grenoble to Brussels a few days after watching Matt’s presentation “BDD As It’s Meant to Be Done.” These two resources helped me understand in just a few hours how to avoid dozens of common mistakes writing scenarios in the Cucumber style. It’s as though I received an injection of perhaps two years of experience writing scenarios poorly so that I didn’t have to go through it all myself. What a gift. I recommend this book to everyone working with Cucumber.

    —J. B. Rainsberger Author, "JUnit Recipes"
  • Few tools have managed to bridge the developer-customer divide as well as Cucumber has. Cucumber is not a tool for testing applications. Cucumber is a philosophy for communicating requirements. This book brings that philosophy to life.

    —Robert C. Martin (Uncle Bob)