Automated tests are pieces of code that execute other code to verify outputs without manual testing. There are unit, integration and acceptance tests. Programmers are the worst testers of their own code so automated testing allows code to be tested and refactored more easily. Code without automated tests is just a rumor rather than a real feature. Test code is also production code so it is important to show code, not just talk about it. Automated testing makes developers out of programmers.