This document contains information about testing infrastructure with Puppet including advocating for test-driven development, examples of Puppet testing code using rspec, and steps for a test-driven workflow of writing tests first, then code to pass tests, and refactoring. It also includes examples using ping and curl for monitoring servers and includes contact information for Garrett Honeycutt who runs the learn Puppet website.