This document discusses unit testing and provides definitions and best practices for writing unit tests. It defines a unit test as a test that runs quickly (less than 1/10th of a second) and focuses on a small part of the system to help localize failures. Good unit tests run fast, help improve quality, help understand the system under test, and reduce risk. The document recommends that unit tests be automatic, thorough, repeatable, independent, and professional. It also describes test doubles and gives examples of different types like dummies. Finally, it discusses sources of inspiration for writing unit tests and next steps.