This document provides an introduction to software testing. It explains that testing is the process of finding errors in a program. Testing is important to find failures before public release, as failures can have major consequences. While developers can test, an independent test engineer is needed for objectivity. Testing requires thinking ahead to break code, and is more creative than development. The document contrasts manual and automated testing, noting automation's advantages in speed, repeatability, and reliability. It then describes CegoSoft's software testing training program, labs, tools, placements, and project types.