Behavior-Driven Development Essentials

This immersive 4-day (or seven 4-hour live remote sessions) course unites your whole team in an intensely collaborative environment designed to circumvent misunderstandings and to successfully specify, build, test, and demonstrate working software using a rapid cycle of tiny increments. Learn to use the elegant and comprehensive Cucumber tool best suited to your Agile development environment.

Options

  • Variable length: At least three days, but often an extra day with your teams, working on their own products, is needed to make the practices stick.

  • Up to 24 participants.

  • Languages currently available: C#(.Net), Java, JavaScript, Python, and Ruby. Official ports for Cucumber in other programming languages will be explored—and a course built—upon request. See here for a list of options: https://cucumber.io/docs/installation/

Objectives

  • Deliver value to customers early and often, without breaking existing functional investments.

  • Use BDD on your own product to make the practices carry forward from the classroom into your actual work.

  • Product, BA, QA, Development: Work collaboratively as a team to derive concrete examples from your PBIs or User Stories.

  • Product, BA, QA, Development: Convert examples into automated Cucumber scenarios.

  • Product, BA, QA, Development: Improve upon the agreed-upon meaning, format, details, and scope of your test scenarios.

  • Developers and QA: Use Cucumber Expressions (like regular expressions, only much simpler) and minimal “glue code” to connect your scenarios to your product in the best, most architecturally-appropriate manner.

  • Developers and QA: Explore the power available through Cucumber to test at the browser, API, or in-proc levels. Learn when each is appropriate.

  • Developers and QA: Learn how to improve the performance of the test-runs so that comprehensive scenario testing is completed in mere minutes instead of weeks.

Audience

The whole software team: This course is designed for entire product development teams, including: developers, testers, product leaders, usability designers, managers, and other stakeholders. BDD is a whole-team collaboration practice, therefore the participation of product people is required.

Prerequisites

  • A group of people who agree to work closely together during the course, with the unified goal of building quality, valuable, extensible software.

FAQ…

What is Behavior-Driven Development training?

A course for whole software teams covering BDD practices with Cucumber — turning user stories into concrete examples, writing automated Cucumber scenarios, and testing at the browser, API, or in-process level.

How long is the BDD course?

Four days in person, or seven 4-hour live remote sessions.

What programming languages is BDD training available in?

C#(.Net), Java, JavaScript, Python, and/or Ruby.

Who should attend?

Whole product teams (not just the developers and testers) — developers, testers, architects, product leaders, usability designers, and other stakeholders.

What's the difference between TDD and BDD training?

TDD focuses on the developers writing unit-level test-first code; BDD focuses on whole teams collaborating to define and automate shared examples of requested behavior. TDD is also useful as an inner code-design cycle within the larger BDD product-development cycle.