Software testing is a process of executing a program or application with the intent of finding the software bugs. It can also be stated as the process of validating and verifying that a software program or application or product: Meets the business and technical requirements that guided its design and development Works as expected can be implemented with the same characteristic. Definition of Software testing can be broken into the following parts: 1) Process: Testing is a process rather than a single activity. 2) All Life Cycle Activities: Testing is a process that's take place throughout the Software Development Life Cycle (SDLC).