A widely-held perception about testing is that it consists only in performing the test and the execution of the software. This is only a part of testing; There are several other testing activities.
Testing activities are present both before and after the execution of tests: activities such as planning and control, the choice of test conditions, the design of the ‘test cases’ and the control of results, the evaluation of the exit criteria, the report on the testing process and the system under test, and finalizing or closing activities after a test phase has been completed. Testing also includes reviewing documents (including source code) and conducting a static analysis.
There are different test objectives:
- find fault;
- gain confidence about the quality and obtain relevant information;
- prevent defects.
Debugging, and testing are different activities. Testing can highlight the negative outcomes (failures) caused by defects. Debugging is the development activity that identifies the cause of a defect, it corrects the code and checks that the fault has been resolved properly.