US 7,552,361 B2
Software testing optimization apparatus and method
Glenn Norman Galler, San Jose, Calif. (US); and Mark Jen, Sunnyvale, Calif. (US)
Assigned to International Business Machines Corporation, Armonk, N.Y. (US)
Filed on Dec. 14, 2006, as Appl. No. 11/610,944.
Prior Publication US 2008/0148247 A1, Jun. 19, 2008
Int. Cl. G06F 11/00 (2006.01)
U.S. Cl. 714—38 8 Claims
OG exemplary drawing
 
1. A computer program product to optimize software testing by detecting and determining unnecessary test cases within a testcase coverage matrix comprising a computer useable storage medium including a computer readable program, wherein the computer program product when executed on a computer causes the computer to:
generate a set of software testcases for testing a software product, each software testcase thereof configured to test at least one line of source code of the software product;
create a testcase coverage matrix comprising testcase identifiers and source code line identifiers, each testcase identifier thereof associated with a software testcase of the set of software testcases, the software testcase configured to test the logic of an associated line of source code, and each source code line identifier thereof associated with a line of source code;
select all software testcases associated with testcase identifiers of the testcase coverage matrix that uniquely correspond to a source code line identifier;
mark source code line identifiers of the testcase coverage matrix that correspond to testcase identifiers of the selected software testcases;
prioritize the software testcases associated with testcase identifiers corresponding to unmarked source code line identifiers according to selected criteria, the unmarked code line identifiers corresponding to two or more testcase identifiers; and
select at least one software testcase associated with a testcase identifier that corresponds to at least one unmarked source code line identifier, the at least one testcase having a highest priority, to determine an optimal set of testcases for software testing.