Choosing inputs systematically.
WHAT EQUIVALENCE PARTITIONING IS
Dividing inputs into groups expected to behave identically.
WHY IT MATTERS
Testing one value from each group covers the group.
WHAT AN EXAMPLE LOOKS LIKE
An age field accepting eighteen to sixty-five has three partitions: below, within, above.
WHAT TO TEST
One value from each.
WHAT BOUNDARY VALUE ANALYSIS ADDS
Testing at the edges of each partition.
WHY EDGES SPECIFICALLY
Most defects occur there, from comparison errors.
WHAT VALUES TO TEST
The boundary, one below, and one above.
WHAT THAT CATCHES
Using greater-than where greater-or-equal was meant, and the reverse.
WHY THAT ERROR IS SO COMMON
It is a single character, and it reads correctly.
WHAT OTHER BOUNDARIES EXIST
Empty and maximum length, for text Zero and negative, for numbers First and last, for collections Minimum and maximum dates
WHAT TO ALWAYS TEST
Empty Zero One Maximum Maximum plus one
WHY ONE SPECIFICALLY
Code handling zero and many frequently mishandles exactly one.
WHAT TO APPLY THIS TO
Every input, and every internal limit.