Behaviour-driven development promises evergreen documentation or human-readable executable specification - sounds great. However, adopting it takes much more than simply installing behave or pytest-bdd and writing Gherkin. This talk will show what.
This talk discusses common issues with BDD specifications, such as:
- lengthy, hard to maintain & read specifications
- intertwined order of given-when-then steps
- technical details leaking to specifications.
Then it shows how to deal with them:
- how to write good specifications,
- what do modularization and DDD have to do with focused scenarios,
- building automation layer to have reusable blocks for Gherkin scenarios.