How to Create and Execute Your First SoapUI Project Using WSDL – SoapUI Tutorial #4

By Vijay

By Vijay

I'm Vijay, and I've been working on this blog for the past 20+ years! I’ve been in the IT industry for more than 20 years now. I completed my graduation in B.E. Computer Science from a reputed Pune university and then started my career in…

Learn about our editorial policies.
Updated February 28, 2024

This is the 4th tutorial of this SoapUI training series.  Here, you will learn how to create and execute your first SoapUI project using WSDL. 

In the previous SoapUI tutorial, we discussed the SoapUI and SoapUI Pro installations

You will learn

  1. Creating SOAP project- adding WSDL during creation or after
  2. Request and Response verification 
  3. Working with TestSuites, TestCases and TestSteps

Let’s get started.

How to Create and Execute Your First SoapUI Project Using WSDL 

How to Create and Execute

Working with SoapUI Projects

Creating a new project by adding WSDL

#1. Open the SoapUI application and follow the instructions given below to proceed with the licensing process

#2. Click on the New SOAP Project option from the File menu or press CTRL+N shortcut key.

#3. Enter the project name (meaningful one is better)

#4. Then specify the valid WSDL URL in the given text box. Let’s use the currency convertor URL. i.e. http://www.webservicex.com/CurrencyConvertor.asmx?wsdl. (There are many other sample WSDL URLs available. Please check for open source web services available for variety)

#5. The remaining settings can be left as default. Click OK. The below WSDL processing progress shows up (Note: A good internet connection is mandatory for this to work)

SOAPUI Project 1

#6. Once WSDL URL processing has been successful, the SOAP project will be created along with the service requests.

The URL we used in this tutorial can be called from anywhere through the Internet. This web service is hosted on a web server and on calling the URL the hosted server is searched and SoapUI project gets loaded with the services contained within it as you can see below:

SOAPUI Project 2

Project creation is done!

Adding WSDL to an existing project

#1. Right-click on the Project Name in the Navigator panel

#2. Click Add WSDL option or hit CTRL + U

#3. Add WSDL dialogue will appear on the screen.

#4. Enter a valid WSDL URL in the text field as seen below:

SOAPUI Project 3

#5. Click OK

#6. The URL is processed and the respective services get loaded into the SOAP project as shown below:

SOAPUI Project 4

Executing Services & Response Verification

#1. Expand the CurrencyConvertorSoap in the tree (click on the +)

#2. Double Click Request1 (the service name, this can be changed if needed)

Please take a look at the screenshot for more information: (Click on the image for an enlarged view)

SOAPUI Project 5

#3. Click on the XML tab from the request section. It will show the input request for currency convertor web service as shown here in the screenshot below. (Click on the image for an enlarged view)

SOAPUI Project 6

In the above screen question mark (?) symbols are in the input request. These are the input parameters for the currency convertor web service.
When run/start a icon is clicked, SoapUI will call the currency convertor web service along with the input parameters that were provided in the request. Then, the web server will receive these input parameters and process them. Once done, the server will send the response back to SoapUI.

Sometimes the response may contain error messages. For example, while processing the input request, a server may be down or Internet connection could not be established from our side. During that time, we will get a response that is an exception.

For instance, let us enter USD for <<From Currency>> and INR for <<To Currency>> with valid values as below and call the service. As can be seen below, the correct response is obtained.

(Click on the image for an enlarged view)

SOAPUI Project 7

To test a negative scenario, let me change the <<From Currency>> as the US and execute the service.

(Click on the image for an enlarged view)

SOAPUI Project 8

We received an unknown error message because our input was incorrect. The same error message will be shown in the error log tab.

TestSuite, TestCase and TestStep in SoapUI

A test suite is a common repository that contains a number of test cases. This is a collection of Test cases that represent the application flow. Test cases are the descriptive data about the application flow. Each test case contains individual actions called Test steps.

In SoapUI, the test suite will be a root node that has to be created explicitly and test cases can be added to it. We can add test steps to the test cases. It is a tree structure of sorts. If the test suites are well built, a bunch of web services can be executed in one go. These test suites can be used for smoke, performance, regression testing, etc. Once executed, SoapUI Pro generates a report for analyzing results.

Adding TestSuite during project creation

#1. Click on the New SoapUI Project option (or press CTRL + N) from the File menu. Check the options listed above and click OK.

SOAPUI Project 9

#2. Another pop-up to set the test case details will be displayed, set the properties as shown below, and click OK

#3. Enter the TestSuite name. By default, a sample name will be automatically assigned and that can be changed. Let’s say it is: CurrencyConvertorSoap_TestSuite1 and click OK

#4. Based on the service count under the project, it will add that many test suites. Multiple test suites can be created.

#5. Finally, the project tree will look like the one below after creating the test suites.

SOAPUI Project 10

#6. We now have two test suites. Each test suite will contain test steps, load test steps and security test steps as shown below:

SOAPUI Project 11

As discussed earlier, the test steps go under test cases. Within the test steps, the actual web service steps get added. If you double-click on the service name, it opens the request and response sections on the right side of the navigator panel.

(Click on the image for an enlarged view)

SOAPUI Project 12

#7. In the input request, replace the ‘?’ with valid input data.

#8. Click on the run icon to execute the test suite. The response can be seen on the right side of the screen as shown below:

(Click on the image for an enlarged view)

SOAPUI Project 13

Adding new TestCases to already existing TestSuites

#1. Right-click on the test suite name

SOAPUI Project 14

#2. Enter the TestCase name and click OK

SOAPUI Project 15
SOAPUI Project 16

#3. Test steps can be added to the test case by right clicking on the test steps and then clicking on the Add Step: Test Request option from the context menu as shown below and follow the steps through.

SOAPUI Project 17

#4. After choosing the name, choose the service name from the drop-down if needed or it can be left empty and click OK

SOAPUI Project 18

#5. In the following wizard, we can rename the request if required, with the other settings as default

click on OK SOAPUI Project 19

#6. The input request name can be seen under the test steps. When the request name is double-clicked, the same input request and response section will open (Click XML tab to see the input and response requests).

#7. Enter the input data and execute the service to receive a response.

(Click on the image for an enlarged view)

SOAPUI Project 20

#8. To execute all the test cases together, double-click on the test suite name and click Start Icon

The list of test cases in the test suite and their execution statuses can be as seen below.

(Click on the image for an enlarged view)

SOAPUI Project 21

Additional Information

  • Cloning objects: Only Test suites, test cases and test steps can be cloned. Right click on the particular tree node and then click Clone test suite or test case or test step.
  • Rename or delete projects and their components: Right click on the respective object and select “Rename” option from the context menu, enter a new name and click on “OK.” To delete, choose the remove option from the menu and confirm the deletion. Once deleted, the operation cannot be undone.

Conclusion

Each project must contain a service request(s). Test suites are particularly useful for executing bulk requests at once, but otherwise individual requests might suffice for simpler tests.

Next Tutorial: In the upcoming tutorial, we will work on understanding Assertions in SoapUI. We will learn the following:

  • Brief Introduction of Assertions
  • Contains and Not Contains Assertions
  • XPath Assertions
  • XQuery Assertions

Please post your questions and feedback in the comments section below. We would love to hear from you.

Was this helpful?

Thanks for your feedback!

Recommended Reading

32 thoughts on “How to Create and Execute Your First SoapUI Project Using WSDL – SoapUI Tutorial #4”

  1. Can anyone suggest me some other useful WSDLs than one mentioned above again and again for search method from a database. Help soon , i m in need of it.

    Reply
  2. Hi,

    I have been trying the currency tutorial from several sites. Each time I run it, I get a -1 rather than a conversion rate.

    -1

    This is a great tutorial BTW, just want to get the correct results 🙂 Am I doing something wrong?

    Thanks!!

    Reply
  3. I tried with currency converter web service but its returning value -1 instead of conversion rate for valid From and To entries.
    Can you please suggest how to proceed with or need to change some parameter from Developer tool?

    Reply
  4. Hi,
    First of all thankyou for posting the tutorials.
    I did this tutorial . But i didnot understand why we have conversion rate under currency converter soap ui and currency convertor soap ui12. what is is use??

    Reply
  5. When I am creating project, it shows error like this. Pl help.error loading WSDL

    Error loading [ http://wwww.we services.com/currency converter.asmx?wsdl]:
    Org.apache.xmlbeans.XmlException:org.apache.xmlbeans.XmlException:error:Unexpected character: ‘1’

    Reply
  6. Continuation for above comment……here where we are storing the responses for the xml requests, how we can store those responses in same input sheet.

    Reply
  7. In this example –
    currencyconverter above WSDL
    User the date format as “YYYY-MM-DD” to get correct response.

    My Request looked like this :


    USD

    INR
    2016-12-05

    Reply
  8. I tried with currency converter web service but its returning value -1 instead of conversion rate for valid From and To entries.

    Thank you!

    Reply
  9. @Kanika:

    For understanding purpose of SOAP UI tool, we have used such sample free webservices.

    Its not mandatory to use this link if you have any alternative.

    Thanks

    Reply
  10. Why do we add Test case when its just creating a copy of the same service.

    e.g. currency converter has a web service called conversion Rate..
    So when we are adding a test case,, its also coming up with same web-service or we can leave it empty,, So its like copying a step and creating a new one…

    is it just for giving different input data we add another test case?

    Reply
  11. @Felix:

    Yes,you can skip. Simply,double click on Test case(not test step).
    Click on Settings button and uncheck Abort on Error checkbox.

    Reply
  12. @Priyadharshini: You can export the result by clicking on the “Export this log to a file..” option that you see in the Test logs section. It is the last one of the 3 tiny icons displayed

    Reply
  13. Hi i got a question:

    I created many Teststeps and i want to add something lika an exptionhandling e.g. when testStep3 fails jump to testStep12 and execute the remaining TestSteps ist that possible? thanks!

    Reply
  14. @Ramadevi

    Please make sure the following before you use the URL:

    1. Make sure the URL is valid

    Note: I can see some of the errors in the URL
    a. “wwww”
    b. “we” services.com …. (it should be “webservices”)

    2. Your Internet connection should be Active / Connected

    Thanks

    Reply
  15. How can we import excel in SoapUI free version, for example I have 10 different variable in an xml and even I want to check the exception if we skip giving any of the variable value. here how can we import the 10 variable values at atime without giving it manually.

    Reply

Leave a Comment