Patent Document ID: 8799868
Application ID: 13088678
Patent Flag: 1

Claim One:
1. A method of performing unit testing of a software module, comprising: identifying, by a computer, functional aspects of a piece of software code; identifying a plurality of decision/condition statements of the piece of software code; estimating an amount of possible test cases based on the plurality of identified decision/condition statements; defining a data set over the plurality of identified decision/condition statements; finding subset relationships between all the defined data sets; defining a plurality of optimal data sets, the defining a plurality of optimal data sets including defining at least two data sets for each of said identified decision/condition statements, a first data set characterized as true and a second data set characterized as false; classifying each decision/condition statement into one of a plurality of decision/condition categories including at least a sequential decision/condition category and a nested decision/condition category; refining the plurality of optimal data sets by overlapping at least a subset of the plurality of decision/condition statements based on the decision/condition category classifications of the decision/condition statements, and calculating a reduced amount of data sets as compared with the plurality of optimal data sets based on the refined optical data sets, the reduced amount comprising an amount that provides optimal coverage with a minimal number of test cases.