Patent ID: 8230401

Claim:
A method, in at least one computing device, for performing a regression test of a system following a plurality of previous runs of a test on said system, each previous run of the test including the execution of at least part of a plurality of test cases each one providing a corresponding previous result, wherein the method comprises: selecting a subset of test cases, from the plurality of test cases, based on a sequence of previous results of the test cases; and executing the selected test cases on the system to perform regression testing of the system and generate regression test results indicative of whether or not changes to the system have introduced errors, wherein: each previous result is positive when indicative of a correct operation of the system or negative when indicative of an error of the system, wherein selecting the subset of test cases comprises selecting a test case, from the plurality of tests cases, to be part of the subset of test cases, and wherein selecting a test case, from the plurality of test cases, to be part of the subset of test cases comprises: calculating an effectiveness index of the test case based on the previous results of the test case, and selecting the test case to be a part of the subset of the test cases according to a comparison of the effectiveness index of the test case with a threshold value, wherein calculating an effectiveness index of the test case based on the previous results of the test case comprises calculating an initial estimate of the effectiveness index based on a frequency of negative previous results calculated based on the total number of negative previous results, and wherein selecting the subset of the test cases comprises at least one of: selecting a test case, from the plurality of test cases, to be part of the subset of test cases, in response to a total number of negative previous results generated by previous runs of the test case, as indicated in a sequence of previous results associated with the test case, being larger than one or more other test cases in the plurality of test cases, selecting a test case, from the plurality of test cases, to be part of the subset of test cases, based on a number of changes in results generated by previous runs of the test case in the sequence of previous results associated with the test case, the changes in results being either a change from a negative result to a positive result or a positive result to a negative result; or selecting a test case, from the plurality of test cases, to be part of the subset of test cases, in response to the test case having a more recent negative previous result when compared to one or more other test cases in the plurality of test cases.