BDD is an agile process designed to keep the focus on stakeholder value throughout the whole project. It is a form of TDD. Specifications are defined in advance, the implementation is done according to those specifications, and they are run periodically to validate the outcome. Besides those similarities, there are a few differences as well. Unlike in TDD, which is based on unit tests, BDD encourages us to write multiple specifications (called scenarios) before starting the implementation (coding). Even though there is no specific rule, BDD tends to levitate towards higher-level functional requirements. While it can be employed at a unit level as well, the real benefits are obtained when taking a higher approach that can be written and understood by everyone. The audience is another difference: BDD tries to empower everyone (coders, testers, managers, end users, business representatives, and so on). While TDD, which is based on unit level, can be described as...
Test-Driven Java Development
Test-Driven Java Development
Overview of this book
Table of Contents (17 chapters)
Test-Driven Java Development
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Free Chapter
Why Should I Care for Test-driven Development?
Tools, Frameworks, and Environments
Red-Green-Refactor – from Failure through Success until Perfection
Unit Testing – Focusing on What You Do and Not on What Has Been Done
Design – If It's Not Testable, It's Not Designed Well
Mocking – Removing External Dependencies
BDD – Working Together with the Whole Team
Refactoring Legacy Code – Making it Young Again
Feature Toggles – Deploying Partially Done Features to Production
Putting It All Together
Index
Customer Reviews