What is "Test Driven Development (TDD)"?
Test Driven Development (TDD) is a development approach in which tests are written first, and only then - the working code. The logic is simple: the developer first formulates the expected behavior of a function as unit tests, and only then writes the minimal implementation needed to make the tests pass.
What TDD is, in simple words
The TDD cycle looks like this:
- Red - write a test that is guaranteed to fail (the code does not exist yet or is wrong)
- Green - write the minimal working code to make the test pass
- Refactor - improve the code while keeping the tests green
This cycle repeats continuously.
What TDD gives you
- Clear understanding of requirements - the system's behavior is formulated before the code is written
- Fewer bugs - tests cover all cases from the very start
- Safe refactoring - tests guarantee that the logic is not broken
- Clean architecture - the code ends up modular and easy to test
- Confidence in the result - the system works the way the tests describe
What this looks like in practice
Instead of writing a function and then thinking about how to test it, the developer does the opposite:
"First I formulate what it should do, then I write how it does it."
Summary
TDD is a methodology in which tests define the behavior and design of the code. It forces you to think through the result in advance and gives clear, verifiable correctness criteria at every step of development.
Short Answer
Interview readyA concise answer to help you respond confidently on this topic during an interview.