Patent Document ID: 9483385
Application ID: 13409236
Patent Flag: 1

Claim One:
1. A computer-implemented method for generating test cases for a system having a plurality of parameters and one or more variable values assigned to each of the plurality of parameters, in accordance with combinations of the parameters and the variable values assigned to the parameters, the computer-implemented method comprises the steps of: holding a set of test cases, in a storage, including existing input test cases in a non-transitory computer readable manner, wherein a validity of each of the existing input test cases has previously been verified; executing, by a processor, a loop until the combinations of the parameters and the variable values are completed for all of the plurality of parameters, wherein the loop comprises: (i) generating the combinations of the parameters and the variable values so that the number of parameters storing variable values gradually increases, (ii) finding a test case that contains combinations of parameters and variable values partially matching the generated combinations of the parameters and the variables in the set of test cases including the existing input test cases, and storing the found test case in a set variable, and (iii) adding, in response to the set variable becoming an empty set, the test case that has been stored in the set variable in the last loop to a set of candidates; adding, by a processor, in response to the combinations of the parameters and the variable values being completed for all of the plurality of parameters, a test case generated on the basis of the completed combinations of the parameters and the variables to the set of candidates; selecting, by a processor, once the test cases for a plurality of different combinations of the parameters and the variable values are accumulated in the set of candidates, a test case from the set of candidates in accordance with the magnitude of a score related to a value including the number of cases that have not appeared, determining that the selected test case is an existing input test case from the set of test cases and calculating the score of the selected test case by increasing the score of the selected test case by multiplying the score by a value greater than one; otherwise, determining that the selected test case is not an existing input test case from the set of test cases and calculating the score for the selected test case without multiplying the score by any value; outputting, by a processor, the selected test case from the set of candidates; and testing the system by performing the selected test case by the system.