Software Testing is the process of identifying the correctness and quality
of software program. The purpose is to check whether the software
satisfies the specific requirements, needs and expectations of the
customer. In other words, testing is executing a system or application
in order to find software bugs, defects or errors. The job of testing is to find out the reasons of application failures so that they can be corrected according to requirements.