Learning Objectives
  • Distinguish normal, abnormal, extreme and boundary test data.
  • Suggest test values and expected outcomes for a scenario.
  • Construct a clear test plan.
  • Explain how test results lead to corrections and retesting.
Key Terms
Test data
Values chosen to check how an algorithm or program behaves.
Normal data
Valid data that is typical of expected use.
Abnormal data
Invalid data that should be rejected.
Extreme data
Valid data at the limits of an allowed range.
Boundary data
Data at and immediately around a boundary, used to test the precise change between accepted and rejected values.
Expected result
The outcome predicted before the test is run.
Actual result
The outcome produced when the test is run.
Summary diagram
Summary Of The Main Ideas In This Lesson
Why Test Data Is Planned

Random testing may miss important conditions. A test plan is based on the requirements and validation rules so that ordinary use, invalid use and limits are covered deliberately.

The expected result must be written before running the program. Otherwise a tester may accept an incorrect result simply because it looks reasonable.

Normal And Abnormal Data

Normal data is valid and representative of ordinary use. For a mark from 0 to 100, 63 is normal. Abnormal data is invalid and should be rejected, such as -4, 114 or text when an integer is required.

A single abnormal value may not test every rule. Separate tests may be needed for below-range, above-range, wrong-type, missing and wrong-format inputs.

Extreme Data

Extreme data is valid data at the lowest or highest permitted value. For the inclusive mark range 0 to 100, the extreme values are 0 and 100. Both should be accepted.

Extreme values check that valid limits have not accidentally been excluded by conditions such as Mark > 0 instead of Mark >= 0.

Boundary Data

Boundary testing focuses on the exact transition between valid and invalid values. For 0 to 100 inclusive, a thorough boundary set includes -1, 0, 1 and 99, 100, 101.

Values just inside, exactly on and just outside each boundary reveal incorrect comparison operators and off-by-one errors. Cambridge distinguishes boundary from extreme: the exact valid limits are extreme, while boundary testing includes values around the limits.

Test Plan Structure
Test Data Type Expected Result
Typical valid mark 63 Normal Accepted and used in calculation
Lowest valid mark 0 Extreme/boundary Accepted
Just below lower limit -1 Boundary and abnormal Rejected with error
Highest valid mark 100 Extreme/boundary Accepted
Just above upper limit 101 Boundary and abnormal Rejected with error
Wrong data type “ten” Abnormal Rejected as not an integer
Testing And Correction Cycle

After a test, compare the actual result with the expected result. If they differ, identify the cause, correct the algorithm or code and run the failed test again. Previous successful tests should also be repeated because a correction can introduce a new error.

This process connects the testing stage to iterative development. A complete record includes data, type, expected result, actual result and pass/fail outcome.

Worked Examples
Age Range

Question: Suggest boundary tests for an inclusive age range 12 to 18.

  1. Lower boundary: 11, 12 and 13.
  2. Upper boundary: 17, 18 and 19.
  3. Predict rejection for 11 and 19.
  4. Predict acceptance for 12, 13, 17 and 18.

Answer: The set checks values just outside, on and just inside both limits.

Password Length

Question: A password must contain at least eight characters. Suggest tests.

  1. Normal: a 10-character password.
  2. Extreme/boundary: exactly 8 characters, accepted.
  3. Boundary abnormal: 7 characters, rejected.
  4. Additional abnormal: blank input, rejected if presence is also required.

Answer: The tests cover ordinary valid use and the exact minimum-length boundary.

Examination Guidance
  • State both data and expected result.
  • Use values that match the precise rule in the scenario.
  • Do not call an invalid outside value “extreme”; extreme values are valid limits.
  • For boundary testing, include values just below, on and just above a limit where appropriate.
  • Retest after corrections and consider regression of previously working cases.
Common Mistakes
  • Choosing several normal values but no invalid values.
  • Giving expected output without test data.
  • Treating 101 as extreme for a 0 to 100 range.
  • Testing only one end of a range.
  • Changing the expected result after seeing the actual output.
Knowledge Check

1. What is normal data?

Answer: Valid data typical of expected use.

2. What is abnormal data?

Answer: Invalid data that should be rejected.

3. What is extreme data?

Answer: Valid data at the limits of the permitted range.

4. What is boundary data?

Answer: Data at and immediately around a boundary.

5. Why predict the expected result first?

Answer: So the actual result can be judged objectively.