Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Introduction to Behavior-Driven Development

Course Summary

The Introduction to Behavior-Driven Development training course equips teams with practices, tools, and techniques to take their software development processes to the next level.

The course begins by providing a hands-on workshop to introduce Behavior-Driven Development (BDD) concepts. Next, students are divided into teams to experience creating BDD feature files, scenarios, and complete working applications. The course concludes with working with Gherkin Syntax and a final project.

This course can be taught from different language and tooling perspectives including Java/Spring, C#/.NET, or Ruby.

Purpose
Learn the skills and concepts necessary to use BDD in software development.
Audience
Teams who are interested in learning about BDD.
Role
Business Analyst - Project Manager - Q/A - Software Developer - Technical Manager - Web Developer
Skill Level
Introduction
Style
Hack-a-thon - Learning Spikes - Workshops
Duration
3 Days
Related Technologies
.NET | C# | Java | Testing | Spring.io

 

Productivity Objectives
  • Describe BDD basics and principles
  • Identify the connection between TDD and BDD
  • Explore how BDD changes the way you approach Agile
  • Identify actionable steps to apply BDD to real-world projects
  • Use Gherkin syntax
  • Build BDD scenarios to serve as acceptance criteria for stories

What You'll Learn:

In the Introduction to Behavior-Driven Development training course, you'll learn:
  • BDD Basics and Principles
    • The digital disconnect
    • BDD principles
    • BDD story format
    • Ubiquitous language
    • BDD structure
  • Working with Gherkin Syntax
    • Given / When / Then
    • How do we know it's a given?
    • Knowing when to say when
    • Then and only then
    • Common pitfalls
    • Putting it into practice
  • Seeing it in Action
    • JBehave introduction
    • Unit structure
    • Story structure
    • BDD code walkthrough
    • Software binding
  • Domains and the Role of Business
    • Outside-in development
    • Goal alignment
    • Impact mapping
    • Impact map structure
    • Value and complexity analysis
    • The three amigos
  • BDD Tooling
    • Tool overview
    • JBehave
    • Cucumber
    • Specflow
    • Selenium
    • Tool integration
  • Compound Gherkin Steps
    • Core concept
    • Sample code
    • Seeing it in action
  • Resolving Duplicates
    • Dealing with repetition
    • Cucumber RegEx
    • RegEx wildcards
    • Wildcard examples
    • Grouping RegEx
  • Patterns and Templates
    • Capturing part of the input
    • Refactoring gherkin
    • Complex string processing
    • Non-capture groups
  • Outlines, Lists, and Data Tables
    • Structure overview
    • Scenario outlines
    • Working with scenario outlines
    • Understanding data lists
    • Utilizing data tables
    • Bringing it all together
  • Before/After Stories
    • Feature background
    • Before and after scenarios
    • Feature-level setup
  • Impact Mapping
    • Goal Alignment
    • Good Goals vs Bad Goals
    • Impact Mapping
    • Tying Impact Mapping back to Agile Planning
  • Steps to Incorporate BDD into a Project
    • Ways to include BDD in your next project
    • Examining your current process
    • Quantifying the benefits of BDD
    • Next steps
  • Final Project
    • Pulling it all together
    • Helpful reminders
    • Comprehensive project
“I appreciated the instructor's technique of writing live code examples rather than using fixed slide decks to present the material.”

VMware

Dive in and learn more

When transforming your workforce, it's important to have expert advice and tailored solutions. We can help. Tell us your unique needs and we'll explore ways to address them.

Let's chat

By filling out this form and clicking submit, you acknowledge our privacy policy.