This document provides an overview of various tools that can help when writing tests, including factories, spies, and mocks. It discusses how each tool can be used to help with different parts of testing like test setup (preparation phase), checking internal behavior, and simulating dependencies. Factory Boy is presented as a tool for generating complex test data structures simply. KGB is shown as a spying library for checking method calls. Mocks from the mock library are demonstrated for simulating object behavior. Hamcrest matchers are described as reusable conditions for assertions. Custom matchers can also be written with matchmaker to dry up assertions.