Software testing is an expensive, time consuming, important activity that controls the quality of the software and important part of the software development and the maintenance. In testing the time is spent mainly for generating test cases and to test them. Whenever the software product gets modified, a group of the test cases has to be re-executed and the new output has to be compared with old one for avoiding the unwanted changes. If there is a match then the modifications that are made in the software will not affect other parts of the software. It is not practically possible to re execute all the test case in the program if any change has occurred.