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 Case||Explanation||Example where a score should be between 0 and 50|
|Normal||Data that you would expect to work or be accepted and that lies within the range||2, 45|
|Extreme||Data at the lower and upper limits of the range||0, 50|
|Exceptional||Data 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).