Patent ID: 8347271

Claim:
A method, comprising: (a) defining a benchmark complexity for a test case including at least one test step, wherein each test step in the test case includes a check condition and a functionality; (b) representing the test case as a flow graph, wherein: the check condition of the test step is represented as an edge of the flow graph and the functionality of the test step is represented as a vertex in the flow graph; and the functionality of each child test step in the test case is only permitted to be performed if the check condition of a parent test step is successful; (c) using a processor to determine a measure of complexity for the test case, including by determining a number of independent paths in the flow graph; (d) if the measure of complexity for the test case exceeds the benchmark complexity, using the processor to modify the test case, including by reducing the number of test steps in the test case; and (e) performing the modified test case with the reduced number of test steps only when the measure of complexity for the test case does not exceed the benchmark complexity.