We being Human beings can commit errors. Errors introduced while developing Software Application can have impact on its functionality. Sometimes it may impact Software Application so severely that it can break the whole Software making it unfit for use. So assuming that Software Development process may introduce such errors, it becomes essential that all such errors whether major or minor are caught and removed well in advance before deploying the Software Application in production environment. “Software Testing” is a process which finds such errors which are called as bugs and makes the Software bug free. Hence Software Testing plays a very importance role, in improving the quality, reliability & performance of the system. A Trained Testing Engineer is required to fully test the System to ensure that it functions properly and meets the business needs.