Monday, October 8, 2007

TESTING VS PROVING

In proving a program correct, the test team or programmer considers only the code and its input and output conditions. The program is viewed in terms of the classes of data and conditions described in the design. Thus, the proof may not involve executing the code but rather understanding what is going on inside the program.
Customers have a different point of view. To demonstrate to them that a program is working properly, we must show them how the code performs from outside the program. In this sense, testing become a basis for deciding how the program will behave in a given situation.
Whereas a proof tells us how a program will work in a hypothetical environment described by the design and requirements, testing gives us information about how a program works in its actual operating environment.

No comments: