This document discusses automated testing for web applications. It defines software testing and different types of testing like unit, integration, functional, and end-to-end testing. Automated testing is recommended because it saves time and money, improves accuracy, allows testing at scale, and improves team morale. Low hanging fruits for automation include unit, integration and functional testing, and setting up continuous integration. The document provides examples of testing a typical application with MongoDB, Tornado and SMTP and concludes with advice to think about testing from the beginning and automate where possible.