How to test software

To thoroughly test a program, you should test it using normal, extreme and exceptional data. The data that falls into each of these categories depends on what your program is designed to do.

For example, if you designed a program to process students' test scores out of 50, then normal, extreme and exceptional data might be as follows:

Test CaseExplanationExample where a score should be between 0 and 50
NormalData that you would expect to work or be accepted and that lies within the range2, 45
ExtremeData at the lower and upper limits of the range0, 50
ExceptionalData that should not be accepted by the program-7, Loads

It is also important to know that extreme test data is NOT boundary testing. Sometimes extreme data is referred to as ‘boundary testing’ but this is a little inaccurate.

Extreme data is only concerned with the lower and upper values in a range, in this case 0 and 50.

Boundary testing would also include -1 and 51 (the first values outside the boundary).