IP Library Patent Application 11395087
Patent Application
App. No. 11/395,087

Centralized code coverage data collection

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/395,087
Abstract

Code coverage data may be provided. An instrumented image may be created comprising a binary executable software module that may be populated with coverage code injected into the binary executable software module. A request for the instrumented image may be received and the instrumented image may be provided based upon the received request. In addition, the code coverage data may be received from the instrumented image. The code coverage data produced by the instrumented image may be executed during a test of the binary executable software module. The coverage code may be configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test. The code coverage data may be analyzed and the binary executable software module may be optimized based on the code coverage data.

Claims (32)

1 . A method for providing code coverage data, the method comprising:

receiving an instrumented image from a central location, the instrumented image comprising a binary executable software module being pre-populated with coverage code injected into the binary executable software module; and

executing the instrumented image during a test of the binary executable software module, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test.

2 . The method of claim 1 , wherein receiving the instrumented image further comprises receiving the instrumented image wherein the instrumented image is updated periodically with a current version of the binary executable software module.

3 . The method of claim 1 , wherein receiving the instrumented image comprising the binary executable software module further comprises receiving the instrumented image comprising the binary executable software module associated with at least one other binary executable software module wherein the binary executable software module and the at least one other binary executable software module are associated within a suite of application programs.

4 . The method of claim 1 , wherein executing the instrumented image during the test of the binary executable software module, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test further comprises the coverage code configured to produce the code coverage data configured to indicate what code within another binary executable software module was used during the test, the another binary executable software module being called by the binary executable software module during the test.

5 . The method of claim 1 , further comprising transmitting the code coverage data to a central database using a desktop code coverage tool, the central database being pre-populated with binary data.

6 . The method of claim 1 , further comprising analyzing the code coverage data produced by the executed instrumented image using a desktop code coverage tool.

7 . The method of claim 6 , wherein analyzing the code coverage data further comprises using the code coverage data to optimize the binary executable software module.

8 . A system for providing code coverage data, the system comprising:

a memory storage; and

a processing unit coupled to the memory storage, wherein the processing unit is operative to:

create an instrumented image comprising a binary executable software module being populated with coverage code injected into the binary executable software module;

receive a request for the instrumented image;

provide the instrumented image based upon the received request; and

receive, at a central database, the code coverage data from the instrumented image, the code coverage data produced by the instrumented image being executed during a test of the binary executable software module, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test.

9 . The system of claim 8 , wherein the processing unit is further operative to update the instrumented image with a current version of the binary executable software module populated with coverage code injected into the current version of the binary executable software module.

10 . The system of claim 8 , wherein the processing unit being operative to create the instrumented image comprising the binary executable software module further comprises the processing unit being operative to create the instrumented image comprising the binary executable software module associated with at least one other binary executable software module wherein the binary executable software module and the at least one other binary executable software module are associated within a suite of application programs.

11 . The system of claim 8 , wherein the processing unit being operative to receive the code coverage data from the instrumented image, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test further comprises the processing unit being operative to configure the coverage code to produce the code coverage data configured to indicate what code within another binary executable software module was used during the test, the another binary executable software module being called by the binary executable software module during the test.

12 . The system of claim 8 , wherein the processing unit is further operative to analyze the code coverage data produced by the executed instrumented image.

13 . The system of claim 12 , wherein the processing unit being operative to analyze the code coverage data further comprises the processing unit being further operative to use the code coverage data to optimize the binary executable software module.

14 . A computer-readable medium which stores a set of instructions which when executed performs a method for providing code coverage data, the method executed by the set of instructions comprising:

creating an instrumented image comprising a binary executable software module being populated with coverage code injected into the binary executable software module;

receiving a request for the instrumented image;

providing the instrumented image based upon the received request; and

receiving the code coverage data from the instrumented image, the code coverage data produced by the instrumented image being executed during a test of the binary executable software module, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test.

15 . The computer-readable medium of claim 14 , further comprising updating the instrumented image with a current version of the binary executable software module populated with coverage code injected into the current version of the binary executable software module.

16 . The computer-readable medium of claim 14 , wherein creating the instrumented image comprising the binary executable software module further comprises creating the instrumented image comprising the binary executable software module associated with at least one other binary executable software module wherein the binary executable software module and the at least one other binary executable software module are associated within a suite of application programs.

17 . The computer-readable medium of claim 14 , wherein receiving the code coverage data from the instrumented image, the coverage code configured to produce the code coverage data configured to indicate what code within the binary executable software module was used during the test further comprises the coverage code configured to produce the code coverage data configured to indicate what code within another binary executable software module was used during the test, the another binary executable software module being called by the binary executable software module during the test.

18 . The computer-readable medium of claim 14 , wherein receiving the code coverage data further comprises receiving the code coverage data at a central database.

19 . The computer-readable medium of claim 14 , further comprising analyzing the code coverage data produced by the executed instrumented image.

20 . The computer-readable medium of claim 19 , wherein analyzing the code coverage data further comprises using the code coverage data to optimize the binary executable software module.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034766/0509 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2006
From: DAVIA, BRIAN D.; ANDERSON, CURTIS D.; FLEISCHMAN, CRAIG L.; MERRIMAN, LOREN J.; SINGH, VIKAS
To: MICROSOFT CORPORATION
Reel/Frame 017520/0019 →