Know and understand the definition, characteristics and use of test data using normal, abnormal and extreme data

Published by Patrick Mutisya · 14 days ago

ICT 0417 – The Systems Life Cycle: Test Data

7. The Systems Life Cycle

Objective

Know and understand the definition, characteristics and use of test data using normal, abnormal and extreme data.

What is Test Data?

Test data are the inputs, conditions and expected results used during the testing phase of the systems life cycle to verify that a system works correctly and meets its requirements.

Characteristics of Good Test Data

  • Relevance: Directly related to the functional requirements being tested.
  • Representativeness: Covers typical, boundary and unusual situations that users may encounter.
  • Traceability: Can be linked back to specific test cases and requirements.
  • Repeatability: Can be reused for regression testing when the system is modified.
  • Clarity: Clearly documented so that any tester can understand the purpose and expected outcome.

Types of Test Data

Test data are usually classified into three categories:

  1. Normal (or Typical) Data
  2. Abnormal (or Invalid) Data
  3. Extreme (or Boundary) Data

Normal Data

Data that represent the usual, expected inputs a user would provide during everyday operation.

  • Falls within the defined range of valid values.
  • Used to confirm that the system performs correctly under normal conditions.
  • Example: For a payroll system, a salary input of £2,500.

Abnormal Data

Data that are deliberately incorrect or outside the allowed range to test the system’s error handling.

  • May include wrong data types, missing mandatory fields, or values that violate business rules.
  • Used to verify that the system produces appropriate error messages and prevents invalid transactions.
  • Example: Entering “ABC” in a numeric field for age.

Extreme Data

Data that lie at the edges of the allowable range, often called boundary values.

  • Tests the limits of the system’s input validation.
  • Helps uncover off‑by‑one errors and overflow problems.
  • Example: If the allowed age range is 1–99, testing with 0, 1, 99 and 100.

Comparison of Test Data Types

AspectNormal DataAbnormal DataExtreme Data
PurposeConfirm correct functionality under typical conditionsCheck error handling and validationValidate boundary conditions and limits
Typical \cdot aluesWithin the defined valid rangeOutside the valid range or wrong typeAt the minimum or maximum of the valid range
ExamplesSalary = £2,500Salary = “twenty thousand”Salary = £0 or £99,999 (if max is £99,999)
Expected System ResponseSuccessful processingClear error message, transaction rejectedAccepts value if within limits, otherwise error

Using Test Data in the Systems Life Cycle

Test data are introduced during the Testing stage of the systems life cycle, but they are prepared earlier, usually in the Design stage when test cases are written.

  1. Identify requirements and define test conditions.
  2. Design test cases and select appropriate normal, abnormal and extreme data.
  3. Execute test cases using the prepared data.
  4. Record results and compare with expected outcomes.
  5. Report defects and retest after corrections.

Suggested diagram: Flow of test data through the systems life cycle (Design → Test Case Creation → Test Execution → Evaluation → Maintenance)

Key Points to Remember

  • Normal data confirm that the system works as intended.
  • Abnormal data ensure robust error handling.
  • Extreme data test the limits and reveal boundary‑related bugs.
  • Good test data are relevant, representative, traceable, repeatable and clearly documented.