Software testing is the process of evaluation a software item to detect differences between given input and expected output. Also to assess the feature of a Software item. Testing assesses the quality of the product. Software testing is a process that should be done during the development process. In other words software testing is a verification and validation process.