Unit Testing vs TDD vs BDD?

Unit testing

A unit testing means test a single “unit of code” – usually a function in an object or module.

Test-Driven Development

TDD (Test-Driven Development) is a process for when you write and run your tests. It gives an opportunity to have a very high test-coverage.

Behavior-Driven Development

BDD (Behavior-Driven Development) – A set of best practices for writing great tests.

i.e.

Unit Testing gives you the what.

Test-Driven Development gives you the when.

Behavior Driven-Development gives you the how.

Use them for best results as they complement each other very nicely.