TESTING DISTRIBUTED COMPONENTS
First Claim
Patent Images
1. At a computer system, a method for testing components of a distributed system, the method comprising:
- an act of accessing a test case definition that defines test directives for testing a plurality of different components in the distributed system, including at least first and second interconnected components;
an act of accessing a first test directive from the test case definition file;
an act of identifying that the first test directive is directed to an API included in a first test library, APIs included in the first test library configured to test the functionality of the first component;
an act of dynamically invoking the first API with parameters included in the first test directive to test the functionality of the first component;
an act of receiving results of the first API testing the first component;
an act of accessing a second test directive from the test case definition file;
an act of identifying that the second test directive is directed to an API included in a second different test library, APIs included in the second different test library configured to test the functionality of the second component;
an act of dynamically invoking the second API with parameters included in the second test directive to test the functionality of the second component; and
an act of receiving results of the second API testing the first component.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for testing distributed components. A test case definition indicates how APIs are to be called to test components of a distributed system. A test driver can execute the test case definition to invoke the APIs. Results of the APIs can be stored. A test case definition can use output from an API testing one distributed component as input to another API for testing a different distributed component. Accordingly, end to end integration testing is possible for computing functionality that spans multiple components of a distributed system
-
Citations
20 Claims
-
1. At a computer system, a method for testing components of a distributed system, the method comprising:
-
an act of accessing a test case definition that defines test directives for testing a plurality of different components in the distributed system, including at least first and second interconnected components; an act of accessing a first test directive from the test case definition file; an act of identifying that the first test directive is directed to an API included in a first test library, APIs included in the first test library configured to test the functionality of the first component; an act of dynamically invoking the first API with parameters included in the first test directive to test the functionality of the first component; an act of receiving results of the first API testing the first component; an act of accessing a second test directive from the test case definition file; an act of identifying that the second test directive is directed to an API included in a second different test library, APIs included in the second different test library configured to test the functionality of the second component; an act of dynamically invoking the second API with parameters included in the second test directive to test the functionality of the second component; and an act of receiving results of the second API testing the first component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 15)
-
-
13. A computer program product for use at a computer system, the computer program product for implementing a method for testing components of a distributed system, the computer program product comprising one or more computer-readable storage media have stored thereon computer-executable instructions that, when executed at the computer system, cause the computer system to perform the following:
-
access a test case definition that defines test directives for testing a plurality of different components in the distributed system, including at least first and second interconnected components; access a first test directive from the test case definition file; identify that the first test directive is directed to an API included in a first test library, APIs included in the first test library configured to test the functionality of the first component; dynamically invoke the first API with parameters included in the first test directive to test the functionality of the first component; receive results of the first API testing the first component; access a second test directive from the test case definition file; identify that the second test directive is directed to an API included in a second different test library, APIs included in the second different test library configured to test the functionality of the second component; dynamically invoke the second API with parameters included in the second test directive to test the functionality of the second component; and receiving results of the second API testing the first component. - View Dependent Claims (14)
-
-
16. At a computer system, a method for creating a test case definition for testing a distributed system, the method comprising:
-
an act of accessing one or more test libraries including exposed APIs for testing components of the distributed system; an act of discovering the exposed APIs; an act of storing information indicating how the exposed APIs are to be invoked; an act of presenting a map of the distributed system along with a list of available APIs per distributed component at a user-interface; an act of receiving a user selection indicating that a specified API is to be called to test a component of the distributed system; and an act of automatically utilizing the stored information to create a test directive appropriately calling the API such that the user is relieved from having to know how to create the test directive. - View Dependent Claims (17, 18, 19, 20)
-
Specification