How do you slice your pizza?
TestingExperience, December 2013
Equivalence partitioning is one of the software test design techniques that really makes sense. So much sense that almost every tester applies this technique, some without even realizing that what they call “common sense” is actually a formal technique. Yet somehow we, as a testing community, do not seem to agree on what the procedure is for equivalence partitioning. We do not even agree on the terminology. Is a partition the same thing as a class? What does it mean that a class is valid or invalid? Once we know what the classes are, how do we combine them into test cases? Do we need output partitioning? In this article I will make a proposal for a unification of the terminology for equivalence partitioning and I will attempt to find a single method for deriving test cases. I gathered the knowledge of many test gurus and I looked for the common denominator, trying to remove the ambiguity without creating a mathematical challenge.