IP Library Granted Patent US 8,978,020
Granted Patent B2
US 8,978,020 · App. 12/901,155 · Granted Mar 10, 2015

Generating reusable test components out of remote application programming interface

View Patent ↗
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 8,978,020
App. No.
12/901,155
Granted
Mar 10, 2015
Kind
B2
Abstract

In an aspect, the present application relates to a computer-implemented method, computer system, and computer program product for (automatically) generating reusable test components to test software applications. The computer-implemented method for generating reusable test components to test software applications may comprise: accessing an object model relating to at least part of a software application; and generating at least one test component applicable to test the software application, comprising: analyzing the object model, generating a meta-description from the object model and store the meta information in at least one descriptor according to a meta model, and generating the test component and a corresponding component implementation based on the descriptor.

Claims (60)

1. A computer-implemented method for generating reusable test components to test software applications including executing instructions recorded on a non-transitory computer-readable storage media using at least one processor, the method comprising:

accessing an object model relating to at least part of a software application; and

generating at least one test component applicable to test the software application, comprising:

analyzing the object model including retrieving at least two method signatures,

generating a meta-description from the object model and storing the meta description in at least one descriptor according to a meta model, wherein the descriptor includes one or more input parameters,

generating the test component and a corresponding component implementation based on the descriptor including combining two of the at least two method signatures in the test component, wherein:

the test component defines a facade to the corresponding component implementation and the test component uses one or more of the input parameters to find a child object of an object targeted by the test component, and

the component implementation is stored in at least one shared library, and

generating a test scenario for the software application by composing generated test components, wherein the test components are reusable for use in different test scenarios.

2. The computer-implemented method as in claim 1 , wherein the object model is exposed through a remote application programming interface (API) of the software application.

3. The computer-implemented method as in claim 1 , wherein analyzing the object model relies on introspection of the object model to retrieve one or more method signatures, and/or one or more properties specifying objects of the software application.

4. The computer-implemented method as in claim 1 , wherein the descriptor comprising the meta-description to properly generate the test component provides:

a name for the test component;

a location of the test component in a file manager used when executing a test scenario for the software application; and

a method signature of the object targeted by the test component.

5. The computer-implemented method as in claim 1 , wherein generating the test component based on the descriptor comprises:

determining whether a signature of a method of the object targeted by the test component returns a value or not;

specifying one or more input parameters for the test component, wherein the input parameters correspond to expected input parameters of the method of the targeted object; and

generating a uniform resource identifier (URI) for the test component, wherein the URI can be used to identify the targeted object.

6. The computer-implemented method as in claim 1 , wherein the corresponding component implementation is accessible from the shared library by the test component when executing the test scenario.

7. A computer program product comprising computer-readable instructions tangibly embodied on a non-transitory storage media that, when executed, cause at least one processor to perform the actions of:

accessing an object model relating to at least part of a software application; and

generating at least one test component applicable to test the software application, comprising:

analyzing the object model including retrieving at least two method signatures,

generating a meta-description from the object model and storing the meta description in at least one descriptor according to a meta model, wherein the descriptor includes one or more input parameters,

generating the test component and a corresponding component implementation based on the descriptor including combining two of the at least two method signatures in the test component, wherein:

the test component defines a facade to the corresponding component implementation and the test component uses one or more of the input parameters to find a child object of an object targeted by the test component, and

the component implementation is stored in at least one shared library, and

generating a test scenario for the software application by composing generated test components including user-selected test components from a user interface having a component selection area, wherein the test components are reusable for use in different test scenarios.

8. The computer program product of claim 7 wherein the object model is exposed through a remote application programming interface (API) of the software application.

9. The computer program product of claim 7 wherein analyzing the object model relies on introspection of the object model to retrieve one or more method signatures, and/or one or more properties specifying objects of the software application.

10. The computer program product of claim 7 wherein the descriptor comprising the meta-description to properly generate the test component provides:

a name for the test component;

a location of the test component in a file manager used when executing a test scenario for the software application; and

a method signature of the object targeted by the test component.

11. The computer program product of claim 7 wherein the instructions that, when executed, cause at least one processor to perform the action of generating the test component based on the descriptor comprises instructions that, when executed, cause the at least one processor to perform the action of:

determining whether a signature of a method of the object targeted by the test component returns a value or not;

specifying one or more input parameters for the test component, wherein the input parameters correspond to expected input parameters of the method of the targeted object; and

generating a uniform resource identifier (URI) for the test component, wherein the URI can be used to identify the targeted object.

12. The computer program product of claim 7 wherein the corresponding component implementation is accessible from the shared library by the test component when executing the test scenario.

13. A computer system for generating reusable test components to test software applications, the system comprising:

a processor; and

a test automation tool with a generator,

the generator being operable to:

access an object model relating to at least a part of a software application; and

generate at least one test component applicable to test the software application by:

analyzing the object model including retrieving at least two method signatures,

generating a meta-description from the object model and storing the meta-description in at least one descriptor according to a meta model, wherein the descriptor includes one or more input parameters,

generating the test component and a corresponding component implementation based on the descriptor including combining two of the at least two method signatures in the test component, wherein:

the test component defines a facade to the corresponding component implementation and the test component uses one or more of the input parameters to find a child object of an object targeted by the test component, and

the component implementation is stored in at least one shared library, and

generating a test scenario for the software application by composing generated test components including user-selected test components from a user interface having a component selection area, wherein the test components are reusable for use in different test scenarios.

14. The computer system of claim 13 , wherein the object model is exposed through a remote application programming interface (API) of the software application.

15. The computer system of claim 13 , wherein the generator is further operable to:

analyze the object model relying on introspection of the object model to retrieve one or more method signatures, and/or one or more properties specifying objects of the software application.

16. The computer system according of claim 13 , wherein the descriptor comprising the meta-description to properly generate the test component provides:

a name for the test component;

a location of the test component in a file manager used when executing the test scenario for the software application; and

a method signature of the object targeted by the test component.

17. The computer system of claim 13 wherein the corresponding component implementation is accessible from the shared library by the test component when executing the test scenario.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0223 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 11, 2011
From: ROSSI, CLAUDE
To: SAP AG
Reel/Frame 025621/0805 →