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.
The Cucumber Book: Behaviour-Driven Development for Testers and Developers
by Matt Wynne and Aslak Hellesøy
The Cucumber Book
Behaviour-Driven Development for Testers and Developers
by Matt Wynne and Aslak Hellesøy
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)
About this Title
Release: P3.0 (2014-03-28)
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
Contents & Extracts
- Cucumber Fundamentals
- A Worked Example
- Step Definitions: On the Inside excerpt
- Support Code
- Dealing with Message Queues and Asynchronous Components
- 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
Matt Wynne is a leading BDD practitioner, a member of the Cucumber core team, and a programmer, coach, trainer, and popular international speaker. Alongside Aslak Hellesøy and Julien Biezemans, Matt is co-founder of Cucumber Ltd., the company behind Cucumber. Matt tweets from @mattwynne and @cucumberbdd.
Aslak Hellesøy is the creator of Cucumber. During his career Aslak has worked with both small and large organizations in industries such as telecom, trading, insurance, car manufacturing, education, and government. Aslak is co-founder of Cucumber Ltd, the company behind Cucumber. He tweets from @aslak_hellesoy and @cucumberbdd.