BDD in Action teaches you the Behavior-Driven Development model and shows you how to integrate it into your existing development process. First you'll learn how to apply BDD to requirements analysis to define features that focus your development efforts on underlying business goals. Then, you'll discover how to automate acceptance criteria and use tests to guide and report on the development process. Along the way, you'll apply BDD principles at the coding level to write more maintainable and better documented code.
Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.
About the Technology
You can't write good software if you don't understand what it's supposed to do. Behavior-Driven Development (BDD) encourages teams to use conversation and concrete examples to build up a shared understanding of how an application should work and which features really matter. With an emerging body of best practices and sophisticated new tools that assist in requirement analysis and test automation, BDD has become a hot, mainstream practice.
About the Book
BDD in Action teaches you BDD principles and practices and shows you how to integrate them into your existing development process, no matter what language you use. First, you'll apply BDD to requirements analysis so you can focus your development efforts on underlying business goals. Then, you'll discover how to automate acceptance criteria and use tests to guide and report on the development process. Along the way, you'll apply BDD principles at the coding level to write more maintainable and better documented code.
No prior experience with BDD is required.
BDD theory and practice
How BDD will affect your team
BDD for acceptance, integration, and unit testing
Reporting and living documentation
About the Author
John Ferguson Smart is a specialist in BDD, automated testing, and software lifecycle development optimization.
Table of Contents
PART 1: FIRST STEPS
Building software that makes a difference
BDD—the whirlwind tour
PART 2: WHAT DO I WANT? DEFINING REQUIREMENTS USING BDD
Understanding the business goals: Feature Injection and related techniques
Defining and illustrating features
From examples to executable specifications
Automating the scenarios
PART 3: HOW DO I BUILD IT? CODING THE BDD WAY
From executable specifications to rock-solid automated acceptance tests
Automating acceptance criteria for the UI layer
Automating acceptance criteria for non-UI requirements
BDD and unit testing
PART 4: TAKING BDD FURTHER
Living Documentation: reporting and project management