-
What is it?
- a practice in which the whole team collaboratively discusses acceptance criteria, with examples, and then distills them into a set of concrete acceptance tests before development begins (Elizabeth Hendrickson)
-
additionally, helps drive other activities (Cheezy Morgan)
- testing
- documentation & specification
-
it has its roots in BDD
- Dan North conceived BDD as a different way to think about TDD (specification rather than testing)
- BDD evolved into a practice "to create a single coherent vision and deliver to that"
- Eventually, some people started calling it ATDD
- Some still believe that BDD and TDD are essentially the same thing
-
Acceptance Criteria
- On Acceptance criteria for user stories (Sandy Mamoly)
- Tests and Requirements, Requirements and Tests: A Möbius Strip (Uncle Bob)
-
How is it done?
-
Key Process Patterns (Gojko Adzic)
- Deriving scope from goals
- Specifying collaboratively
- Illustrating using examples
- Refining the specification
- Automating validation without changing specifications
- Validating frequently
- Evolving a documentation system
-
Conversational patterns in BDD (Liz Keogh)
- Context Questioning
- Outcome Questioning
-
Challenging Requirements (Gojko Adzic)
- Refuse solutions to unknown problems: understand what the real problem is and solve that
- Refuse suggestions to use a technology: you're the IT expert
- Don't rush into solving the first problem they give you: keep asking "why" until you get to the money
- Know your stakeholders: who's going to use this and why?
- Don't start with stories! start with a high level example of how people will use the system
-
Writing Specifications
-
Good Practice
- Imperative vs Declarative Scenarios In User Stories (Ben Mabey)
- What makes a good feature file
- What’s in a Story? (Dan North)
- Given/When/Then (Martin Fowler)
-
Warnings
- The Problems With Acceptance Testing (James Shore)
- Top 10 reasons why teams fail with Acceptance Testing (Gojko Adzic)
- The Cucumber Test Trap (Steve Tooke)
-
Recommended Books
- Specification by Example, by Gojko Adzic
- Cucumber & Cheese - A Testers Workshop , by Jeff "Cheezy" Morgan