Equivalence Partitioning In Software Testing