This document provides an overview of test driven development (TDD). It defines TDD as first writing an initially failing test case that defines a requirement, then producing just enough code to pass that test, and refactoring the new code. The document outlines the basic TDD steps, what can be tested, advantages of TDD like improved design and reduced bugs, and provides an example of incrementally developing a method using TDD.
Related topics: