This course is an introduction to Test Driven Development. TDD is a practice where we start writing tests defining the problem we have to solve and later writing the code implementation. By doing this, we focus on what we have to build and what are the expected outcomes of the software. We also have a safe space to try new designs, approaches and solutions to the same problem, as the boundaries and scope are well defined by the tests.
In this course we will learn what is TDD, how to use it in a nodejs and typescript environment using jest as testing framework. During the way we will see the basic rules of it and how we can take advantage of being disciplined. To do so, will do some exercises to practice what we learned in a safe space with specific learning objectives. We will have some problems presented and we will start first writing the tests, one at a time and leveraging the design of our code from them using the red-green-refactor loop. Later we will learn how to use mocks and stubs and we will write the tests with our design already in mind and build our software with confidence according to our design decisions.
Kudos to @Panos for the constructive feedback that helped to make this course better.