The Cucumber for Java Book: Behaviour-Driven Development for Testers and Developers
Teams working on the JVM can now say goodbye forever to misunderstood requirements, tedious manual acceptance tests, and out-of-date documentation. Cucumber – the popular, open-source tool that helps teams communicate more effectively with their customers – now has a Java version, and our bestselling Cucumber Book has been updated to match. The Cucumber for Java Book has the same great advice about how to deliver rock-solid applications collaboratively, but with all code completely rewritten in Java. New chapters cover features unique to the Java version of Cucumber, and reflect insights from the Cucumber team since the original book was published.
Until now it’s been difficult for teams developing Java applications to learn how to benefit from Behaviour-Driven Development (BDD). This book changes all that by describing in detail how to use Cucumber to harness the power of plain language specifications in your development process.
In part 1, you’ll discover how to use Cucumber’s Gherkin DSL to describe the behavior your customers want from the system. You’ll also learn how to write Java code that interprets those plain language specifications and checks them against your application. Part 2 guides you through a worked example, using Spring, MySQL, and Jetty. Enhanced chapters teach you how to use Selenium to drive your application and handle asynchronous Ajax calls, and new chapters cover Dependency Injection (DI) and advanced techniques to help keep your test suites fast. Part 3 shows you how to integrate Cucumber with your Continuous Integration (CI) system, work with a REST web service, and even use BDD with legacy applications.
Written by the creator of Cucumber and two of its most experienced users and contributors, The Cucumber for Java Book is an authoritative guide that will give you and your team all the knowledge you need to start using Cucumber with confidence.
Table of Contents
Part I Cucumber Fundamentals
Chapter 1. Why Cucumber?
Chapter 2. First Taste
Chapter 3. Gherkin Basics
Chapter 4. Step Definitions: From the Outside
Chapter 5. Expressive Scenarios
Chapter 6. Keeping Your Cucumbers Sweet
Part II A Worked Example
Chapter 7. Step Definitions: On the Inside
Chapter 8. Support Code
Chapter 9. Message Queues and Asynchronous Components
Chapter 10. Databases
Chapter 11. Simplifying Design with Dependency Injection
Chapter 12. Working with Web Applications
Chapter 13. Keeping Your Features Fast
Part III More Techniques
Chapter 14. Controlling Cucumber
Chapter 15. Working with a REST Web Service
Chapter 16. Working with Legacy Applications
Appendix A. Installing Cucumber
Appendix B. Cucumber and Other JVM Languages
Appendix C. Bibliography