Examining a program to check if it doesn't do what it's supposed to do is only half the problem. The other half is checking if the program does what its not supposed to do. Avoid throw-away test cases. Do not plan testing with the assumption that no errors will be found. The probability of the existence of more errors in a section of a program is proportional to the number of errors already found in that section.
Testing is the process of executing a program with the intent of finding errors.
A good test case is one that has a high probability of detecting an as-yet undiscovered error. A successful test case is one that detects an as-yet undiscovered error. Hierarchical Testing a. Execute the JCL 2. Module testing is the heart of any test plan.