Q26 of 38 · Test design

How do you manage combinatorial explosion when a feature has many input combinations?

Test designMidtest-designpairwisecombinatorialequivalence-partitioningtest-reduction

Short answer

Short answer: Use pairwise (all-pairs) testing to reduce the test set to combinations that cover every pair of values at least once. This typically cuts a full factorial test set by 90%+ while catching the vast majority of real defects.

Detail

A feature with 5 inputs each having 3 values has 3^5 = 243 full-factorial combinations. Pairwise reduces this to ~18 test cases while guaranteeing every pair of input values appears together at least once. Research from Microsoft and others shows that most defects are caused by the interaction of one or two inputs — three-way interactions are rare.

For higher confidence on safety-critical or high-risk areas, three-way (triplet) coverage is possible but increases the test set by roughly 3x over pairwise. Use it selectively.

Other strategies: equivalence partitioning (reduce each input to its representative classes before combining), and risk-based selection (only fully test the most common or highest-risk combinations). Tools like ACTS or Hexawise generate pairwise arrays automatically from your input definitions.

// WHAT INTERVIEWERS LOOK FOR

Knowing pairwise cuts the set while preserving defect-detection power. Ability to explain why full factorial is impractical. Awareness of tools and when three-way coverage is worth the cost.