Selenium Deep Dive: Applying BDD & TDD Using Selenium

Expected Duration
Lesson Objectives
Course Number
Expertise Level


One of the benefits of using Selenium for test automation is to apply software development processes that improve test-driven development and enable domain-driven, object-oriented analysis. One such development process is a type of test-driven development (TDD) framework known as behavior-driven development (BDD).

In this course, you'll explore the concepts and benefits of both behavior-driven and test-driven development. You'll learn to install, configure, and integrate Selenium with the behave BDD framework and the platform, Cucumber, to provision BDD and TDD environments and facilitate functional test automation. You'll use these tools to create feature files, write and automate functional tests, manage page objects, and model page object implementation. You'll also learn to interpret data behavior and implement functional test automation of form-based web pages. 

Expected Duration (hours)

Lesson Objectives

Selenium Deep Dive: Applying BDD & TDD Using Selenium

  • discover the key concepts covered in this course
  • define the concept of behavior-driven development (BDD) and list the benefits of test automation using BDD and Selenium
  • install and configure the behave BDD framework, create a feature file, and generate the code scaffolding for it
  • automate functional tests by passing arguments to step definitions using the behave framework and the step consolidation pattern
  • manage page objects of a web application by implementing a step definition to adopt a bottom-up approach to page object planning
  • model page object implementation with BDD frameworks and Selenium WebDriver, using step definition files to implement the Singleton design pattern and interface
  • define the concept of test-driven development (TDD) and describe the benefits of using TDD with Selenium WebDriver
  • demonstrate the TDD approach to writing functional tests for Django projects using Selenium WebDriver
  • configure BDD environments by both integrating Cucumber and Selenium and by using Selenium WebDriver with Java
  • interpret the behavior of data by implementing data-driven tests using a Cucumber data table
  • implement functional test automation of form-based web pages using Cucumber and Selenium WebDriver
  • summarize the key concepts covered in this course
  • Course Number:

    Expertise Level