Tool to analyze dependency injection object graphs for common error patterns
First Claim
1. A method of identifying errors in an object dependency graph, the method comprising:
- identifying one or more plugin points associated with the object dependency graph;
determining a module and module type associated with a method at one of the one or more plugin points on the object dependency graph, where the module type represents a type of service provided by the module when executed;
responsive to determining the module type, automatically discovering one or more repositories of testlets associated with the determined module type;
automatically selecting, from a set of testlets in the one or more repositories of testlets, at least one testlet associated with the determined module type, where each testlet is associated with one or more common dependency errors and where at least one automatically selected testlet is generic to multiple application types; and
automatically creating, with a processor, at least one test suite for each selected testlet, the created at least one test suite including at least one unit test case, where said automatically creating includesbuilding an executable code module that, when executed with a processor,analyzes the object dependency graph starting at the plugin point based on the created at least one test suite, the analyzing including analyzing bindings of a dependency injector associated with the object dependency graph, andgenerates data showing a location and severity of said common dependency errors within the object dependency graph.
2 Assignments
0 Petitions
Accused Products
Abstract
The present document pertains to systems and methods of dependency framework analysis to automatically identify errors in the dependency framework of an application or software module. Variations discussed include devices and methods for identifying errors in an object dependency graph by techniques such as determining a module and module type associated with a method at a plugin point on the object dependency graph; automatically selecting, from a set of testlets, at least one testlet associated with the determined module type, where each testlet is associated with one or more common dependency errors; and automatically creating, with a processor, at least one test suite for each selected testlet, where automatically creating includes building an executable code module that, when executed with a processor, analyzes the dependency graph at the plugin point and generates data showing a location and severity of common dependency errors within the graph.
36 Citations
18 Claims
-
1. A method of identifying errors in an object dependency graph, the method comprising:
-
identifying one or more plugin points associated with the object dependency graph; determining a module and module type associated with a method at one of the one or more plugin points on the object dependency graph, where the module type represents a type of service provided by the module when executed; responsive to determining the module type, automatically discovering one or more repositories of testlets associated with the determined module type; automatically selecting, from a set of testlets in the one or more repositories of testlets, at least one testlet associated with the determined module type, where each testlet is associated with one or more common dependency errors and where at least one automatically selected testlet is generic to multiple application types; and automatically creating, with a processor, at least one test suite for each selected testlet, the created at least one test suite including at least one unit test case, where said automatically creating includes building an executable code module that, when executed with a processor, analyzes the object dependency graph starting at the plugin point based on the created at least one test suite, the analyzing including analyzing bindings of a dependency injector associated with the object dependency graph, and generates data showing a location and severity of said common dependency errors within the object dependency graph. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 18)
-
-
9. A device for analyzing a dependency object graph of one or more software components, the device comprising:
-
a processor; a computer-readable memory having stored thereon a set of instructions which, when executed by the processor, cause the device to perform a method of identifying errors in an object dependency graph, the method comprising; identifying one or more plugin points associated with the object dependency graph; determining a module and module type associated with a method at one of the one or more plugin points on the object dependency graph, where the module type represents a type of service provided by the module when executed; responsive to determining the module type, automatically discovering one or more repositories of testlets associated with the determined module type; automatically selecting, from a set of testlets in the one or more repositories of testlets, at least one testlet associated with the determined module type, where each testlet is associated with one or more common dependency errors, and where at least one automatically selected testlet is generic to multiple application types; and automatically creating at least one test suite for each selected testlet, the created at least one test suite including at least one unit test case, where said automatically creating includes building an executable code module that, when executed with a processor, analyzes the object dependency graph starting at the plugin point based on the created at least one test suite, the analyzing including analyzing bindings of a dependency injector associated with the object dependency graph, and generates data showing a location and severity of said common dependency errors within the object dependency graph. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A non-transitory computer-readable medium having embodied thereon a set of instructions which, when read and executed by one or more processors, cause the processors to perform a method of identifying errors in an object dependency graph, the method comprising:
-
identifying one or more plugin points associated with the object dependency graph; determining a module and module type associated with a method at one of the one or more plugin points on the object dependency graph, where the module type represents a type of service provided by the module when executed; responsive to determining the module type, automatically discovering one or more repositories of testlets associated with the determined module type; automatically selecting, from a set of testlets in the one or more repositories of testlets, at least one testlet associated with the determined module type, where each testlet is associated with one or more common dependency errors, and where at least one automatically selected testlet is generic to multiple application types; and automatically creating at least one test suite for each selected testlet, the created at least one test suite including at least one unit test case, where said automatically creating includes building an executable code module that, when executed with a processor, analyzes the object dependency graph starting at the plugin point based on the created at least one test suite, the analyzing including analyzing bindings of a dependency injector associated with the object dependency graph, and generates data showing a location and severity of said common dependency errors within the object dependency graph.
-
Specification