Claims Analysis
Total Claims: 16
Claim 1
Independent Claim
84 words
A computer implemented method for analyzing test coverage data of a program in a computer, comprising the steps of: generating a flowgraph representing program components of the program and possible execution flows through the program components; collecting test coverage data while executing the program; determining executed and unexecuted program components on the flowgraph using the collected test coverage data; and presenting a list of unexecuted program components according to a decreasing order of a number of unexecuted instructions reachable from each unexecuted program component.
Claim 2
Dependent Claim
84 words
A computer implemented method for analyzing test coverage data of a program in a computer, comprising the steps of: generating a flowgraph representing program components of the program and possible execution flows through the program components; collecting test coverage data while executing the program; determining executed and unexecuted program components on the flowgraph using the collected test coverage data; and presenting a list of unexecuted program components according to a decreasing order of a number of unexecuted instructions reachable from each unexecuted program component.
Claim 3
Dependent Claim
41 words
The method of claim 1 wherein the step of presenting further comprises the steps of: selecting unexecuted destination points from among the unexecuted program components; and counting the number of unexecuted instructions reachable from each of the selected unexecuted destination points.
Claim 4
Dependent Claim
20 words
The method of claim 2 further comprising: selecting first unexecuted destination points that are targets of executed flow control instructions.
Claim 5
Dependent Claim
19 words
The method of claim 2 further comprising: selecting second unexecuted destination points that are targets of indirect procedure calls.
Claim 6
Dependent Claim
19 words
The method of claim 2 further comprising: selecting third unexecuted destination points that are unreachable by any program component.
Claim 7
Dependent Claim
15 words
The method of claim 1 further comprising: instrumenting a source code representation of the program.
Claim 8
Dependent Claim
15 words
The method of claim 1 further comprising: instrumenting a machine executable code representation the program.
Claim 9
Dependent Claim
14 words
The method of claim 1 further comprising: generating a complete graph of the program.
Claim 10
Dependent Claim
14 words
The method of claim 1 further comprising: generating a partial graph of the program.
Claim 11
Dependent Claim
64 words
The method of claim 1 further comprising: identifying flow control instructions in the program which are decision points, the flow control instructions that can dynamically alter the execution flow to multiple destination points; adding calls to the program at each possible destination point, the calls to divert the execution flow to monitoring routine for recording test coverage data in a memory of the computer.
Claim 12
Dependent Claim
21 words
The method of claim 10 further comprising: linking the monitoring routine to the program when the program is loaded for execution.
Claim 13
Dependent Claim
32 words
The method of claim 1 wherein the graph includes one node for each program component to be represented, and edges of the graph indicate possible execution flows between directly called program components.
Claim 14
Dependent Claim
33 words
The method of claim 12 further comprising: beginning at a particular unexecuted destination point, traversing all edges of the graph linking unexecuted program components while counting until another executed program component is reached.
Claim 15
Dependent Claim
18 words
The method of claim 12 further comprising: coloring nodes of the graph to indicate the unexecuted program components.
Claim 16
Dependent Claim
14 words
The method of claim 1 wherein the program components are basic blocks and procedures.