
Learn how behavior driven development aligns features with product owner intent, improves code quality, and demonstrates a practical TDD approach using a JavaScript to-do list.
Explore behavior driven development and test driven development, learn how to combine them, then implement a JavaScript task list using cucumber-js for BDD and a library for TDD.
Explore behavior driven development to build the right thing by documenting stakeholder communication in a specification workshop, using user stories and rules, then translating Gerken into executable cucumber specifications.
Learn test driven development as a living documentation approach that drives building the right thing right. Write failing tests first, implement code to pass, then refactor for lean, maintainable software.
Explore how BDD and TDD work together through cycles of failing tests, coding to satisfy feature and unit tests, and refactoring for maintainable, high-quality code. See a JavaScript example.
Gherkin is a plain text language understood by everyone, used with BDD to clarify requirements. Define features and scenarios with given, when, then, and, to describe tasks.
Cucumber reads feature files in plain English, matches each step to its step definitions, and runs code to satisfy every given when then step, using a features folder structure.
Explore building a task list and task manager using behavior driven development, with prerequisites in JavaScript, object-oriented concepts, and basic testing with the just library.
Learn to define a feature file using gherkin syntax to add a task, including a feature title, optional description, and a scenario with given, when, and then steps.
Create step definitions for the add task feature with cucumber.js, scaffold a definitions file, paste generated snippets, and import given, when, and where to verify steps are defined.
Implement the given step by creating a world context in world.js, define a task manager with an empty task list, and drive development through unit tests and acceptance tests.
Forgetful Alex shows how to extend an abstract Task Manager and call super to access predefined methods, illustrating how to build the right thing in BDD & TDD in practice.
Explore how to implement when and then steps for addTask using BDD and TDD, writing failing tests, building a task manager, and refining code through acceptance and unit test cycles.
Apply bdd and tdd to implement a no-description feature in a task manager, throwing an error when the description is empty with 'please provide a description' and validating with tests.
Learn to create a toggle task feature file with scenarios for undone by default and toggling to done, and implement Cucumber step definitions within a BDD and TDD workflow.
Implement the toggle feature for tasks using bdd and tdd, locating a task by its id and flipping its completed status, guided by acceptance tests.
Practice deleting tasks by implementing a delete task feature in the abstract task manager, creating a feature file and step definitions, and following the behavior driven and test driven cycle.
Create a delete task feature file with a delete task scenario and run npm run test site acceptance to verify cucumber steps.
Use the BDD and TDD cycle to implement the delete task feature in a shared task manager, validating acceptance tests and ensuring the task list no longer contains the task.
Implement a delete task feature using a task manager with unit and acceptance tests, creating a mock task, filtering the task list by id, and validating removal.
Explore how behavior driven development builds the right thing by using feature files and Gherkin to avoid miscommunication, and how test driven development validates the solution before coding.
When developers and non-developers such as product owners, customers or project managers work on a project, it can quickly happen that there is a gap between what one imagines and what the other implements. To avoid this, we work with the software development process Behavior Driven Development - but what exactly is BDD?
In this course we will give you an introduction to Behaviour Driven Development and how we can use and implement it using JavaScript.
In our course "BDD & TDD in Practice" you will get an introduction to Behavior Driven Development and how to use and implement it with JavaScript. Using the example of a task list, you will learn what scenarios can look like, how tests are written and how to write down the appropriate code. In addition, of course, we also go into what "Gherkin" and "Cucumber" are. In addition to the video units, we have put together summaries and useful links that can help you understand.
Also we will code a small project together, but not in the normal, boring way you are used to. No, this time you will do it using the BDD approach!
See you in the course,
Alex