Importing SoapUI projects into Postman

We received a lot of feedback from SoapUI users who wanted to import their projects into Postman.

Postman's support for Swagger means this is possible in a few clicks! You can get a Postman collection with the URL, headers, and payload data all filled in the requests.

Here's a quick walkthrough:

  1. We'll start off by creating a SoapUI project using Facebook's API. The kind folks at Smartbear have a ton of open-source projects on GitHub. One of them is "soapui-sample-projects", which has the project definitions for a few widely used APIs. For this guide, we'll choose Facebook.

  2. Navigate to the project definition for the Facebook project at https://github.com/SmartBear/soapui-sample-projects/blob/master/Facebook/Facebook-soapui-project.xml. Save this file locally.

  3. Open SoapUI. Click the Import button, and select the file you just downloaded.
    1-SoapUIImport

  4. You should see a hierarchy of API endpoints in the left sidebar. Each endpoint + method combination will have associated data like URL parameters and headers. This is the data that we'll aim to import into Postman.
    2-SoapUIExplore

  5. Right-click on the 'Facebook' project, and click 'Export Swagger'. You'll need to provide a base path for the API. For Facebook, it's graph.facebook.com. You can find this in the 'Endpoint' field if you open a request. Select 'Graph API' as the API you want to export, fill in the base path, and choose a target location to save the Swagger file.
    3-SoapUIContext
    4-SoapUIExportOptions

  6. We can now import this Swagger file directly into Postman! Open your copy of Postman, and click 'Import' in the top navigation bar. In the 'Import File' tab, select the file you saved in Step 5.
    6-PostmanImport

  7. You should see an imported collection called 'Graph API', which has all the endpoints defined in SoapUI.
    7-PostImport

  8. You'll notice Postman automatically groups requests into folders. Also, the use of environment variables is encouraged – the {{user}} notation indicates that you can simply add an environment variable named 'user', and it's value will be substituted while sending the request.

Some aspects of SoapUI like load testing aren't reflected when you import the file into Postman. We're looking at ways to better handle SoapUI's testing capabilities, but that'll be a blog post for another time.

Follow us on Twitter for more!

4 thoughts on “Importing SoapUI projects into Postman”

  1. I have a SOAPUI Project with around 12 services in it.
    I exported as Swagger and imported into Postman.
    It gave me only 3 services in it.
    I tried with multiple projects and multiple times.
    It didn't help.

Leave a Reply

Your email address will not be published. Required fields are marked *