Professional Course

Test and Behavior Driven Development (TDD/BDD)

edX, Online
4 weeks
99 USD
Next course start
Start anytime See details
Self-paced Online
4 weeks
99 USD
Next course start
Start anytime See details
Self-paced Online
Visit this course's homepage on the provider's site to learn more or book!

Course description

Test and Behavior Driven Development (TDD/BDD)

Testing is one of the most critical processes of the Software Development Lifecycle (SDLC) and often contributes to preventing bugs, reducing development costs, and improving performance. Two of the best methods for testing software are Test Driven Development (TDD) and Behavior Driven Development (BDD). TDD tests individual units of code while BDD tests how these units work together.

This course introduces you to the fundamentals of both TDD and BDD, You’ll discover what automated testing is and why it is essential for building robust applications resilient to failure. You'll explore the basics of testing, including test cases, testing levels, the traditional release cycle, and the benefits, concepts and popular tools involved.

This course provides multiple real-world inspired hands-on labs to demonstrate your skills with TDD and BDD. You’ll create TDD test cases by writing test assertions and building test fixtures, and you’ll run these test cases using the Nose testing package. You’ll practice more advanced TDD methods, such as increasing code coverage, generating and using fake data, and testing mock objects. You’ll also practice setting up a BDD environment using Behave, write the feature and step files, test a web interface using Selenium, and load sample data for testing.

By the end of the course you will have the knowledge and skills to perform test driven development (TDD) and behavior driven development (BDD) testing and understand when to apply these development techniques.

Upcoming start dates

1 start date available

Start anytime

  • Self-paced Online
  • Online
  • English

Who should attend?


This course is suitable for those with basic computer and IT literacy, and those looking to increase their current knowledge of software engineering.

Training content

Module 1: Introduction to Testing

  • The Importance of Testing
  • Why Developers Don’t Test
  • Testing Levels and Release Cycle
  • TDD and BDD
  • Testing Case Study

Module 2: Introduction to Test Driven Development

  • Benefits of Test Driven Development
  • Tools for TDD
  • Running Tests with Nose
  • Running Tests with Nose Demo
  • Hands-on Lab: Running Tests with Nose
  • Anatomy of a Test Case
  • Writing Test Assertions
  • Writing Test Assertions Demo
  • Hands-on Lab: Writing Test Assertions
  • Test Fixtures
  • Creating Initial State Using Test Fixtures Demo
  • Hands-on Lab: Creating an Initial State Using Test Fixtures

Module 3: Advanced Methods for Test Driven Development

  • Test Coverage
  • Running Test Cases with Coverage Demo
  • Hands-on Lab: Running Test Cases with Coverage
  • Factories and Fakes
  • Factories and Fakes Demo
  • Hands-on Lab: Using Factories and Fakes
  • Mocking
  • Mocking with Patch
  • Mocking with Mock Objects
  • Mocking with Mock Objects Demo
  • Hands-on Lab: Mocking Objects
  • Practicing Test Driven Development
  • Practicing Test Driven Development Demo
  • Hands-On Lab: Practicing Test Driven Development

Module 4: Introduction to Behavior-Driven Development

  • What is Behavior Driven Development
  • Benefits of BDD
  • BDD Workflow and Gherkin Syntax
  • Example of BDD
  • Tools for Behavior Driven Development
  • Overview of Behave
  • Environment Setup
  • Environment Setup Demo
  • Hands-on Lab: Setting up an Environment
  • Writing Feature Files
  • Writing Feature Files Demo
  • Hands-on Lab: Writing Feature Files
  • Selenium
  • UI Considerations
  • Writing Step Files
  • Writing Step Files Demo
  • Hands-on Lab: Writing Step Files
  • Loading Test Data with Behave
  • Loading Test Data with Behave Demo
  • Hands-on Lab: Loading Test Data with Behave

Module 5: Running Behave for Behavior Driven Development

  • Generating Steps with Behave
  • Generating Steps with Behave Demo
  • Hands-on Lab: Generating Steps with Behave
  • Implementing Your First Steps
  • Implementing Your First Steps Demo
  • Hands-on Lab: Implementing Your First Steps
  • Working with the Context
  • Working with the Context Demo
  • Hands-on Lab: Working with the Context
  • Using Variable Substitution
  • Using Variable Substitution Demo
  • Hands-on Lab: Using Variable Substitution
  • BDD in Practice

Module 6: Final Project

Course delivery details

This course is offered through IBM, a partner institute of EdX.

14–16 hours per week


  • Verified Track -$99
  • Audit Track - Free

Certification / Credits

What you'll learn

  • Explain the importance of testing.
  • Describe test-driven development (TDD) and explain its benefits for DevOps.
  • Develop unit tests with test assertions and test fixtures and then run the tests.
  • Improve unit testing through advanced TDD methods including coverage reports, factories, fakes, and mock objects.
  • Summarize the steps in a typical BDD workflow.
  • Describe popular BDD tools and their benefits.
  • Conduct BDD tests using Honcho and Behave.

Contact this provider

Contact course provider

Fill out your details to find out more about Test and Behavior Driven Development (TDD/BDD).

  Contact the provider

  Get more information

  Register your interest

Country *

reCAPTCHA logo This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
141 Portland Street
02139 Cambridge Massachusetts


edX For Business helps leading companies upskill their labor forces by making the world’s greatest educational resources available to learners across a wide variety of in-demand fields. edX For Business delivers high-quality corporate eLearning to train and engage your employees...

Read more and show all training delivered by this supplier