Browse Prior Art Database

Method and approach for automated XSD to CTD model conversion

IP.com Disclosure Number: IPCOM000243763D
Publication Date: 2015-Oct-16
Document File: 3 page(s) / 104K

Publishing Venue

The IP.com Prior Art Database

Abstract

Application Program Interface - APIs have become the heart of any development work today. An API defines functionality that are independent of their respective implementations. They allow reuse of functionality and can be combined to create enriched functionality for users. Combinatorial Test Design (CTD) approach can be applied to API testing to ensure very high level of coverage with an optimized set of data combinations. Current approach involves manually creating a CTD model manually in a tool. Based on the manually created model, data combinations are generated using the tool. This approach of manually creating a model is a time consuming activity. The time consumed is in direct proportion to the number of data elements to be created as part of the model. To minimize this effort and time taken, we have developed a solution to automatically create CTD model, from the API specifications in the form of an XML Schema Definition (XSD), at a click of a button.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 54% of the total text.

Page 01 of 3

Method and approach for automated XSD to CTD model conversion

The products available for test modelling and generation of optimized data combinations do not have the capability of model creation through API XSDs.

CTD TOOL1: The tool provides optimized data combinations for testing by creating a project model.

CTD TOOL2: The tool supports a plug-in based architecture to generated test scripts for a number of script back-ends such as Python, Perl, etc.

CTD TOOL3: Is able to generate test scripts which contain test steps in addition to the data combinations to be tested.

In our approach CTD TOOL1 was used as the base CTD tool. The capabilities of tool have been expanded by us to parse the API definitions provided in the form of an XSD and translating the definition, as follows, into a CTD model.

• Each data element in the XSD is translated to a corresponding data element in CTD model.

• Overall element hierarchy and structure is maintained by using a naming convention for each data element in the created model such that the data element name is unique to the entire model

• Attributes of element and enumerated values translate to attributes and possible values for each element in the CTD model.

• Restrictions from the XSD are modeled to either enumerations or restrictions in the CTD model.


• Choice elements in the XSD are mapped to Boolean elements in the CTD model.

• Further, restrictions are automatically deduced from the choice elements to ensure

that when a specific choice element is present, other choice elements are automatically avoided in the output data combination...