OVERVIEW Define Testing Why is necessary? Who does testing? When to start testing? When to stop testing? Testing as an engineering activity Role of process in software quality Testing as a process Basic definitions Software testing principles Testers role in a software development organization
DEFINE TESTING Testing is generally described as a group of procedures carried out to evaluate some aspect of a piece of software. Testing is executing a system in order to identify any gaps, errors, or missing requirements in contrary to the actual requirements. Software testing is a process of executing a program or application with the intent of finding the software bugs. Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.
Static Testing: It can test and find defects without executing code. Static Testing is done during verification process. This testing includes reviewing of the documents (including source code) and static analysis. This is useful and cost effective way of testing. For example: reviewing, walkthrough, inspection, etc. Dynamic Testing: In dynamic testing the software code is executed to demonstrate the result of running tests. It’s done during validation process. For example: unit testing, integration testing, system testing, etc.