The groundbreaking book Design Driven Testing brings sanity back to the software development process by flipping around the concept of Test Driven Development (TDD)—restoring the concept of using testing to verify a design instead of pretending that unit tests are a replacement for design. Anyone who feels that TDD is “Too Damn Difficult” will appreciate this book. Design Driven Testing shows that, by combining a forward-thinking development process with cutting-edge automation, testing can be a finely targeted, business-driven, rewarding effort. In other words, you’ll learn how to test smarter, not harder.
- Applies a feedback-driven approach to each stage of the project lifecycle.
- Illustrates a lightweight and effective approach using a core subset of UML.
- Explains how to use Enterprise Architect to generate automatically acceptance test cases from structured scenarios
- Explains how to use Enterprise Architect and the Agile/ICONIX add-in to generate JUnit and FlexUnit test code
- Follows a real-life example project using Java and Flex/ActionScript.
- Presents bonus chapters for advanced DDTers covering unit-test antipatterns (and their opposite, “test-conscious” design patterns), and showing how to create your own test transformation templates in Enterprise Architect.
What you’ll learn
- Create unit and behavioral tests using JUnit, NUnit, FlexUnit.
- Generate acceptance tests for all usage paths through use case thread expansion.
- Generate requirement tests for functional requirements.
- Run complex acceptance tests across the enterprise.
- Isolate individual control points for self-contained unit/behavioral tests.
- Apply Behavior Driven Development frameworks like JBehave and NBehave
Design Driven Testing should appeal to developers, project managers, testers, business analysts, architects…in fact anyone who builds software that needs to be tested. While equally applicable on both large and small projects, Design Driven Testing is especially helpful to those developers who need to verify their software against formal requirements. Such developers will benefit greatly from the rational and disciplined approach espoused by the authors.