Behavior-driven development
A variation on test-driven development.
Differences from TDD
- Specifications rather than tests.
- Expectations rather than assertions.
- Encourages greater use of mock objects than TDD does. (Watch out for Mock object smell.)
- Whereas TDD tests are gray-box tests, BDD specifications are closer to black-box tests.