Behaviour-Driven Development

Behaviour-Driven Development (BDD) is a process that aims to uncover and resolve communication problems by creating a shared understanding of the behaviour of a software product before it is developed.

That all sounds well and good, but how do you do that? This course will teach you how to get started with BDD and the tools and techniques that support it, as well as some of the most common pitfalls and challenges by teams trying to implement BDD.

Course contents
This course covers, among other things:

  • An overview of the three steps of the ‘textbook’ BDD process
  • Discovery: using Specification by Example and Example Mapping to facilitate and structure conversations around desired behaviour of a piece of work
  • Formulation: creating executable specifications, in Gherkin or otherwise, to document expected behaviour and create living documentation
  • Automation: using tools that support BDD (such as Cucumber, SpecFlow or pytest-bdd) to drive automated acceptance tests from your specifications
  • Common misunderstandings and pitfalls when practicing BDD
  • What does it take to implement BDD in your organization?

There’s no better way to learn than by doing, so you’ll be presented with a variety of hands-on exercises throughout this course.

Intended audience and prerequisite knowledge
This course is aimed at software development practitioners that want to learn more about Behaviour Driven Development, and to make sure that they get the most out of doing so.

Delivery and group size
This is a live training course, available both on site and online. Due to the collaborative nature of many of the exercises, I highly prefer running this course on site.

This course takes two working days.

If you would like to book me to teach this course in your organization, or if you have any additional questions, please send an email to or use the contact form on this page.

For an overview of all training courses I have on offer, please visit the main training page.