Introduction
SOAtest can automatically create a .tst based on the endpoints found in an OpenAPI/Swagger description. Each .tst generated using the OpenAPI/Swagger wizard will contain REST Clients for all of the defined endpoints.
The following specifications are supported:
- Swagger 1.0 - 2.0. This includes any Swagger core versions that are compatible with these specs (for example, Swagger core 1.0.0, 1.2.4, 1.3.12, 1.5.0-M1, 1.5.0).
- OpenAPI/Swagger 3.2.
You can also use AI to create tests with your AI client and the SOAtest MCP Server. See Using Parasoft Tools as an MCP Server for more information.
Creating a Test Suite from an OpenAPI/Swagger Definition
To automatically create a test suite from a valid OpenAPI/Swagger definition:
- Right-click the project in the Test Case Explorer and choose Add New > Test (.tst)...
- Specify a name for the file and click Next.
- Choose the REST > OpenAPI/Swagger option and click Next. For details on accessing the wizards, see Adding a New .tst File to an Existing Project and Adding a New Test Suite.
- Enter the absolute URI for the OpenAPI/Swagger definition file or click Browse to find it on the local machine.
- Click Next. The Create Environment page opens.
- (Optional) Specify whether you want to reference an existing environment or create a new one.
- To create a new environment:
- Enable Create a new environment for your project.
- Enter an Environment Name and Variable Prefix.
- To reference an existing environment, enable Reference an existing environment then specify the appropriate environment file.
- For more information on environments, see Configuring Testing in Different Environments.
- To create a new environment:
- Click Finish.
When a .tst is generated, it includes one REST Client for each resource/method pair in the OpenAPI/Swagger definition.
- Each REST Client is set to be constrained to the specified service definition and schema (if applicable).
- Its resource URL, HTTP method, and payload (if applicable) are configured accordingly.
- The service's base URL is configured as a "BASEURL" variable, and each resource URL is parameterized with the "BASEURL" variable.
- Query parameters are included with default or sample values (if available) as defined by the service definition.
- If the service definition includes a schema, a sample payload is constructed from (and constrained to) that schema.
Additionally, test scenarios created with OpenAI will automatically have applicable smart test templates applied to them.