Automatically running tests against WEB APIs based on specifications
First Claim
Patent Images
1. A computing device comprising:
- a processor;
a network interface coupled to the processor to enable communication over a network;
a storage device coupled to the processor;
a compliance engine software stored in the storage device, wherein an execution of the software by the processor configures the computing device to perform acts comprising;
receiving an electronic specification defining an application program interface (API), over the network;
identifying service calls to be tested based on the specification;
creating a test case for each of the identified service calls;
creating a sequence for the created test cases, for an efficient correlation between the specification and the API, wherein the sequence for the created test cases comprises;
automatically identifying one or more Hypertext Transfer Protocol (HTTP) invocations comprising at least one of;
POST, GET, PUT, PATCH, or DELETE invocation;
automatically ordering any identified POST invocation before any GET, PUT, PATCH, and DELETE invocation; and
automatically ordering any DELETE invocation after any POST, GET, PUT, and PATCH invocation;
generating a test plan based on the created sequence;
executing the generated test plan; and
upon identifying an error in response to the executed test plan, generating a notification indicating that the specification is not an accurate representation of the API.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system of determining whether a specification is an accurate representation of an application program interface (API) is provided. The specification is received electronically over a network. Service calls to be tested are identified based on the specification. A test case is created for each of the identified service calls. A sequence is created for the test cases. A test plan is generated based on the created sequence. The generated test plan is executed. Upon identifying an error in response to the executed test plan, a notification is generated, indicating that the specification is not an accurate representation of the API.
-
Citations
18 Claims
-
1. A computing device comprising:
-
a processor; a network interface coupled to the processor to enable communication over a network; a storage device coupled to the processor; a compliance engine software stored in the storage device, wherein an execution of the software by the processor configures the computing device to perform acts comprising; receiving an electronic specification defining an application program interface (API), over the network; identifying service calls to be tested based on the specification; creating a test case for each of the identified service calls; creating a sequence for the created test cases, for an efficient correlation between the specification and the API, wherein the sequence for the created test cases comprises; automatically identifying one or more Hypertext Transfer Protocol (HTTP) invocations comprising at least one of;
POST, GET, PUT, PATCH, or DELETE invocation;automatically ordering any identified POST invocation before any GET, PUT, PATCH, and DELETE invocation; and automatically ordering any DELETE invocation after any POST, GET, PUT, and PATCH invocation; generating a test plan based on the created sequence; executing the generated test plan; and upon identifying an error in response to the executed test plan, generating a notification indicating that the specification is not an accurate representation of the API. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer readable storage medium tangibly embodying a computer readable program code having computer readable instructions that, when executed, causes a computer device to carry out a method of determining whether a specification is an accurate representation of an application program interface (API), the method comprising:
-
receiving the specification electronically, over a network; identifying service calls to be tested based on the specification; creating a test case for each of the identified service calls; creating a sequence for the created test cases, for an efficient correlation between the specification and the API, wherein the sequence for the created test cases comprises; automatically identifying one or more Hypertext Transfer Protocol (HTTP) invocations comprising at least one of;
POST, GET, PUT, PATCH, or DELETE invocation;automatically ordering any identified POST invocation before any GET, PUT, PATCH, and DELETE invocation; and automatically ordering any DELETE invocation after any POST, GET, PUT, and PATCH invocation; generating a test plan based on the created sequence; executing the generated test plan; and upon identifying an error in response to the executed test plan, generating a notification indicating that the specification is not an accurate representation of the API. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
Specification