Behavior Driven Development (BDD)

Agile Training Course – Abstract

This agile training course is designed to train both technical and business facing agile team members in the Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD) processes. The topics for discussion include the ATDD/BDD process, executable documentation, using a ubiquitous language, overview of ATDD and BDD automated tools, ATDD/BDD incorporation into the CI/CD process, ATDD/BDD relation to TDD and automated testing, metrics and reporting and how to use ATDD/BDD to bridge the agile QA gap. Concepts are explored related to support and integration of ATDD/BDD tools with both xUnit and Functional Automated Tests. Labs will be part of the course experience and the ATDD/BDD labs will deeply explore proper test case writing using the “Given”, “When”, “Then” format, executable acceptance criteria and explain how these concepts can drive your TDD and automated testing process. Acceptance Test Driven Development and Behavior Driven Development are intended to foster collaboration between the technical and business side of agile teams and this agile training course will explore in detail how this can be accomplished.


This is a course for agile team members who desire to increase the agility of their team by incorporating the ATDD/BDD processes into the agile methodology. The participant must have a clear understanding of agile concepts.


This course requires participants to have taken an acceptable Introduction to Agile course.


2 Days

Learning Outcomes

Upon completion of this agile training course, participants will be able to:

  • Ability to understand the BDD outside-in, pull-based, multiple-stakeholder, multiple-scale, high-automation, agile methodology.
  • ATDD and BDD’s role in agile development.
  • Analyze agile stories and write BDD “given”, “when”, “then” test scenarios and ATDD executable acceptance criteria
  • Understand BDD specifies that tests of any unit of software should be specified in terms of the desired behavior of the unit.
  • Recognize ATDD and BDD’s role in answering TDD questions of, where to start in the process, what to test and what not to test, how much to test in one go, what to call the tests and how to understand why a test fails.
  • Understand how Cucumber and Fitnesse integrate with xUnit and functional automation tools.

Course Topics

Topics addressed in the agile training course include:

  • ATDD/BDD’s Effect on Automation
  • ATDD History
  • ATDD Principles
  • ATDD’s Role in Agile
  • BDD History
  • BDD Principles
  • BDD’s Role in Agile
  • BDD Language
  • BDD Feature Injection
  • BDD Bad Practices
  • Ubiquitous Language
  • TDD problems solved by ATDD/BDD
  • Driving all Automation with ATDD/BDD
  • Executable Documentation
  • Using a BDD Framework Tool with Unit and Functional Automation (Cucumber + Gherkin)
  • Using a ATDD Framework Tool with Unit and Functional Automation (Fitnesse)
  • Steps to a Successful ATDD/BDD Implementation
  • Using ATDD/BDD With CI/CD and DevOps (XBDD)
  • Reporting and Metrics
  • Using ATDD/BDD to bridge the Agile QA Gap

Course Code

  • ENG-002

Course Objectives

  • Understand the connection between Acceptance Test Driven Development or Behavior Driven Development and Test Driven Development.
  • Learn to develop automated test cases by following the ATDD/BDD processes.
  • Explore available ATDD and BDD automated test tools.
  • Explore using ATDD/BDD to describe desired behavior that has business value.
  • Introduce ATDD/BDD automated tools and explore how they can be integrated with both xUnit and Functional automated test tools.

Request This Course

Download and extend ATF...

ATF Is Now Open Source

Join this 10 week program anytime...

DevOps Mastery Program

Get your DevOps health check now...

Free DevOps Assessment