Behavior-Driven Development is a software development process that puts feature behaviors first. A behavior is how a feature operates within a well-defined scenario of inputs, actions, and outcomes. Behaviors are identified using specification by example. Behavior specs become the requirements, the acceptance criteria, and the acceptance tests. Test frameworks can directly automate specs as well – declarative specs for unique product behaviors should be the units of coverage. The most prevalent BDD test frameworks are Cucumber derivatives that write specs in the “Given-When-Then” Gherkin language.

  • The Big BDD Picture is better collaboration and automation.
  • The Cardinal Rule of BDD is one scenario, one behavior.
  • The Golden Gherkin Rule is to treat other readers as you would want to be treated.
    • Write Gherkin so that people who don’t know the feature will understand it.

BDD 101

BDD 101 is the go-to resource for learning BDD (and the most popular series on the blog).

  1. Introducing BDD
  2. The Gherkin Language
  3. Gherkin By Example
  4. Writing Good Gherkin
  5. Behavior-Driven Agile
  6. Automation
  7. Frameworks
  8. Unit, Integration, and End-to-End Tests
  9. Test Data
  10. Manual Testing

Major Guides




Example Projects

External Resources

Like to cook? Try my cucumber recipe!