15+ SoapUI Tutorials: The Best Web Services API Testing Tool

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 November 28, 2024

In this article, we have compiled a list of Soap UI Tutorials for the benefit of our readers. Let’s get started.

STH is coming up with another testing tool tutorial. You know how detailed and useful these tutorials are. The tools are SoapUI and SoapUI Pro.

We suggest that our readers should start learning SoapUI – the most used web service API testing tool.

Since this is a highly technical and specialized form of testing we are talking about, it is important that we lay some groundwork that will lead the way to easily mastering the concepts.

SoapUI Tutorials

soapui tutorials

Here is what you will learn from this comprehensive SoapUI Tutorial series

SoapUI Tutorials

SoapUI Pro Tutorials

=> First get and install pro version from here.

*******************

In this tutorial, we are going to discuss web services in detail.

Nowadays web services play a major role in Internet applications. Let us now take some time for a brief introduction of the web services. For enhanced expertise in web services knowing HTML and XML mark up languages is important as the Web Services are created and implemented with via these languages.

What are Web Services?

Web services are web components that transfer data between client and server. The client sends a web request to the server and the server then responds to the client. This response will differ based on the web service request type.

Web services in SoapUI

SoapUI is designed for validating web services easily.

Let’s look at an example: A flight ticker booking application that runs in City 1 and is being accessed from City 2 to book a ticket. A user enters all the information such as boarding point, destination point, date of journey etc, and then as soon as the “Book Now” button is clicked, the web service from City 1 gets invoked and it passes all the information that is entered to the application server that processes the user request. The Reservation application will then send a response to the User’s request.

Most online payment transactions are processed through web services only because of the enhanced security this method offers. An input parameter will be sent to the payment gateway website and which will be processed subsequently. An acknowledgement will be sent to the client regarding the payment status finally.

All these activities can be seen through SoapUI request and response screens. SoapUI helps us to evaluate these web services.

Now let’s see the important components of the web services. They are,

  • WSDL – Web Service Description Language
  • SOAP – Simple Object Access Protocol
  • UDDI – Universal Description, Discovery and Integration
  • RDF – Resource Description Framework

#1. WSDL (Web Services Description Language)

A WSDL is a document that should be written using XML. This document describes the following details about the web service:

  • Origin of the web service
  • Header information
  • Port type
  • Input and output messages

Each of the above information is represented as a tag in the WSDL file, such as:

  1. <types> – XML Schema data types
  2. <message> – the actual request and response data being communicated
  3. <portType> – the target/end points where the actual web service is hosted to perform the operation
  4. <binding>– the protocol information is given for the data format
  5. <definitions>– the parent tag for the above-mentioned tags

Now let’s look at the sample WSDL file

webservices 1

Your WSDL file should follow the W3C standard as stated above. Through web services, we can convert into a web based application. Web services are constructed on top of XML, HTTP, TCP / IP, Java, HTML and so on. Since web services are XML based language, we can have these applications as local, distributed and web-based environments.

Role of WSDL

Validating web services using SoapUI is easy and is only possible with WSDL document because to configure web services in SoapUI, WSDL document is mandatory. If the WSDL document is not valid, SoapUI will throw an exception immediately. Now let us look at the UDDI component.

#2. UDDI (Universal Description, Discovery and Integration)

This is a global repository where we can search for web services spread across the globe. To get or search for web services just visit http://uddi.xml.org/ website. Here you can also register your own web service and make it available to global users.

UDDI is the place where the WSDL is described in detail. This will be communicated through the SOAP protocol which will be explored later in this tutorial. Say, for example, if you wish to advertise your products to global customers you could create a web service and host it through UDDI. This can now be accessed by global users and from there the business can be established.

#3. SOAP (Simple Object Access Protocol)

Generally, it uses XML based data to interact with web applications.

Here are a few points to remember

  • SOAP is language and platform independent as it is written by using XML.
  • It creates a platform to communicate with applications that are running in different operating systems using different technologies.
  • Most of the Internet applications interact with each other over Remote Procedure Calls that use DCOM (Distributed Component) and CORBA (Common Broker Architecture)
  • These technologies are different than the HTTP.

RPC (Remote procedure calls) are sometimes blocked by firewalls and proxy servers. To overcome these issues, SOAP was designed. There are some standard rules to be followed while building SOAP requests.

Let’s take a look at the sample SOAP document.

webservices 2

As you can see, a SOAP document must contain the following elements:

  1. Envelope element is the topmost tag which identifies the XML document as a SOAP message.
  2. Followed by the Envelope element, you will see the header element that has the header information.
  3. The Body element specifies the call and response information.
  4. Finally, you have the Fault element which contains errors and status information.

The above said elements should be declared with the default namespace for the SOAP envelope.

Generally, a protocol is a set of standard rules that transfer the data between two regions on the Internet over the web services. There are many protocols that are used in Internet applications. They are Transmission Control Protocol (TCP), which serves as a packet between two connections. Internet Protocol (IP) that sends and receives messages between two destinations.

Let us look at some other important protocols

  • Hyper Text Transfer Protocol (HTTP)
  • File Transfer Protocol (FTP)
  • Border Gateway Protocol (BGP) and
  • Dynamic Host Configuration Protocol (DHCP)

These protocols are used according to the requirements.

#4. RDF (Resource Description Framework)

RDF contains a description of the web resources such as title, author, content, and copyright information. This framework was designed so that computers can be read and understood easily by the web.

RDF is completely written by using XML language.

RDF data can be transferred between different types of computers using different operating systems and programming languages. Generally, RDF uses Uniform Resource Identifiers (URIs) on the web and it describes the resources along with the property and property values.

Take a look at the sample RDF document for better understanding:

<? xml version="1.0"?>
<RDF>
  <Description about="https://www.softwaretestinghelp.com/rdf">
    <author> Wilfred R. Myers </author>
    <homepage>http://www. softwaretestinghelp.com</homepage>
  </Description>
</RDF>

What is XML

XML (eXtensible Markup Language) is a markup language that is used for storing, sharing and formatting data. In general, an XML document is built by the tags. Let us see the sample XML content for a user’s personal information.

<Firstname> Joel </Firstname>
<Lastname> King </Lastname>
<Address> 1432 Valley Drive </Address>
<City> New York </City>
<Country> United States </Country>
<Zipcode> 19714 </Zipcode>

Meaning of “eXtensibleand “Markup”:

In the above sample, First name, Last name, Address etc. are enclosed by less than (<) and greater than (>) symbols. These labels are known as tags and the one with the forward slash (/) along with the text, that is called closing tag. Tags are also called mark-ups. These can be customized as needed. This customization is not possible in other markup languages like SGML, HTML and so on. This is why XML is an extensible language.

XML focuses on the data for storing, sharing and exchanging as required, and HTML deals with the format of the data like applying colours, adding images, changing fonts, styles and so on.

XML and HTML can be used together in applications. For example, if you take a book, there will be textual data and graphical representation formatted. Hypothetically, XML can handle storing actual data and HTML applies the format for the content. Thereby the textbook could have information as well as attractive images and colours.

How does XML work with SoapUI?

As XML is a common language on the Internet, it can be integrated with SoapUI because web services are mostly written in the form of XML. Also, if we pass XML input parameter to the web service, the response itself will be in the form of XML. SOAPUI can configure these web services

Conclusion

So far in this tutorial, we have taken a look at the following:

  • Web services and its several components like WSDL, UDDI, RDF SOAP
  • Importance of WSDL document and its body of content
  • XML and its usages in SoapUI

Next tutorial => In the next tutorial, we will learn the features of SoapUI and SoapUI Pro version in detail.

Feel free to post all your queries about web services and the SoapUI tool in the comments section. We will answer all these questions in the upcoming tutorials. 

**********************************

Here is the list again.

List of SoapUI and SoapUI Pro Tutorials

SoapUI Free Version Tutorials:

Tutorial #1. Understanding Web services
– What are Webservices?
– What is the role of WSDL in SoapUI?
– Understanding XML

Tutorial #2. Features of SoapUI & SoapUI Pro
– SoapUI
– SoapUI Pro

Tutorial #3. Installation of SoapUI and SoapUI Pro

Tutorial #4. Working with Projects
– Creating Projects in SoapUI
– Adding Testsuite, Testcase and Test step
– Cloning Objects of Project
– Renaming and Deleting Project Elements

Tutorial #5. Understanding Assertions in SOAPUI
– Brief Introduction of Assertions
– Contains and Not Contains Assertions
– XPath Assertions
– XQuery Assertions

Tutorial #6. Working with Operators
– Glance At Groovy Scripting
– Working with Arithmetic Operations
– Understanding Unary Operators
– Using Assignment Operators

Tutorial #7. Dealing Properties with Groovy Script
– Assigning Data to Properties
– Accessing Test Results From Properties
– Understanding Property Test Step

Tutorial #8. Working with Properties
– Different Faces of Properties
– Integrating Properties in Service Request
– Understanding Property Transfer Test step
– Load Properties Externally

Tutorial #9. Conditional Statements in Groovy
– Boolean Statements
– Iteration Statements
– Arrays in Groovy

Tutorial #10. Object Oriented Concepts
– Basic Introduction of OOP
– Methods with Global Properties
– Methods with ‘Return’ keyword
– Methods with Arrays

Tutorial #11. Exception Handling in Groovy
– Brief Introduction of Exception and Its Types
– Importance of Exception Handling in SoapUI
– Explaining Exception Handling with Example

SoapUI Pro Tutorials

This is a powerful next generation of SoapUI version with many core functionalities.

=> Before going into more details about these SoapUI pro tutorials, I suggest to install the SoapUI Pro version from here.

Tutorial #12. Introducing SoapUI Pro

Tutorial #13. Understanding REST and SOAP Services

Tutorial #14. Understanding Data Driven Testing
– Understanding Data Driven Testing
– Brief introduction of data driven testing and types
– Datasource and Datasource loop test steps
– Storing and Reading From XLS and XML

Tutorial #15. Storing Request and Response in a File

Tutorial #16. Top 30+ SoapUI Interview Questions

**********************************

Was this helpful?

Thanks for your feedback!

Recommended Reading

  • How to Perform Data Driven Testing in SoapUI Pro – SoapUI Tutorial #14

    In this article, we will learn in detail how to perform data driven testing in SoapUI Pro. Let's get started. In this SoapUI Pro tutorial, we are going to see Data Driven Testing using SoapUI Pro. Performing load testing and performance testing with huge amounts of data is often time-to-consumer.…

  • soapui tutorial 15

    This tutorial is a Quick SoapUI Guide to store request and response data in a file. We will learn how to store the responses in a file for future reference.  This is the last tutorial in our SoapUI free training series. Click on this link for all the previous tutorials…

  • Properties in SoapUI

    In this tutorial, you will see how to use properties in SoapUI Groovy Script. Let's get started.  Properties are the central repository to store our information temporarily. They can contain login information like username and password, session data like session id, page context, header information and so on. This is…

  • Soapui and pro features

    In this article, we will look in detail at the 7 important features of SoapUI and SoapUI Pro. Let's get started. SoapUI is a great tool for functional testing, web service testing, security testing and load testing.  This is the 2nd tutorial in our SoapUI web service testing tutorial series.…

  • working with soapui properties

    This tutorial is all about working with SoapUI properties. Let's get started. In the last SoapUI tutorial we saw how to add properties in Groovy script. The property in SoapUI is similar to a variable/ parameter and in this tutorial, we will talk about how to use one in a…

  • Assertions in SoapUI

    This article is all about understanding assertions in SoapUI. Let's get started.  So far, we have been working on the basics of SoapUI such as creating projects, adding WSDL, sending a request & receiving responses and generating test assets to go along with them. In this 5th SoapUI tutorial, we…

  • 4 Important Features of SoapUI Pro for Pro Audience – SoapUI Tutorial #12

    In this article, we will look at the 4 important features of SoapUI Pro for Pro Audience. Let's get started. SoapUI comes in two versions - Open Source Free (SoapUI) and SoapUI Pro (now SoapUI NG pro). So far we were discussing common automation concepts and functional testing basics such…

  • How to Write Basic Groovy Script in SoapUI - SoapUi Tutorial #6

    In this tutorial, we will learn how to write basic groovy script in SoapUI. We will learn about different types of operators that can be used in Groovy scripts in SoapUI. Let’s begin with groovy scripting and how we can use it in SoapUI Pro. This is the 6th tutorial…


44 thoughts on “15+ SoapUI Tutorials: The Best Web Services API Testing Tool”

  1. Thank you so much.
    From many days I am waiting for soap ui tutorial.
    I am really looking forward for this tutorials

    Reply
  2. Hi, i am working as manual tester in soap ui since Last 1 year.But now i want to automate our project through soap UI.
    Can you please help me to validate the Dynamic value in response with parametrization of input value in request.
    How can i Automate my SOAP UI Project.

    Thanks in advance.. Please help me….

    Reply
  3. Thank you so much.
    From many days I waiting for soap ui tutorial.
    I am really looking forward for this tutorial

    Reply
  4. Hii Team,

    Currently i want to learn SOAP Testing .it is very helpful.
    i love STH because its TOPIC and discussions helps more better than other Site.

    if you added interview Question and how to crack it will be better in this tutorial.

    Again Thanks to STH owner ,Team member and the Authors.

    @@Team Could you please help to learn Mobile Application testing (Automation) using QTP / SeeTest / EggPlant / Ranorex .

    Reply
  5. Thank you for the tutorial!
    It provides very useful knowledge about Web service.
    I am a newbie in testing web services, want to learn more about SoapUI tool for testing it.

    Reply
  6. Thank You for providing full material tutorials especially for those who want to start learning Soap UI, but please at the beginning mention the highlights of the project and what we will gain after the completion of this course.

    Reply
  7. I have completed all the tutorials with 14 days trial of soap NG (Ready aPI) latest version of SOAP.. This series was awesome.. would like to thank you from bottom of my heart,,,,

    In the next series please include some assignments it would help in learning more..

    thanks STH… and the members behind this series..

    Reply
  8. @Amol:

    Yes.. you are correct Amol…its typo error. Apologize for that.

    It should be “Simple Object Access Protocol ”

    Thanks

    Reply
  9. Its really a good tutorial and this gonna help many and might be all who want to start from scratch.

    But we need to make correction of SOAP full form i.e. Simple Object Access Protocol ,

    This might be a typing mistake somewhere.But this need a quick correction

    Reply
  10. Hi STH,
    This article’s very helpful, very detail oriented. It helps me easier to understand.
    I would like to send a BIG thanks to you.

    Reply
  11. Thanks to STH and the team members who provided the article on Soap UI.It’s nicely explained and waiting for the second part of this tuturiol.

    Reply
  12. Hi,
    There is a typo error for SOAP abbreviation,i guess it should be Simple Object Access Protocol instead of Simple Access Object Protocol.

    Reply
  13. @Santosh/Ravi:

    I agree with @Santhosh….

    @Ravi..

    The correct form is “Simple Object Access Protocol ” no need to confuse hereafter 🙂

    Thanks

    Reply
  14. Its really useful information, especially for those who want to start learning Soap UI. When can we expect the next tutorial?

    Thanks a lot.

    Reply
  15. A big thanks to STH team. Knowledge provided is really very helpful. I got new project and was able to answer almost 85% questions asked.

    Now again I am going through it. It will be good if automation tutorial is added in depth.I know am acting little greedy here 🙂

    Good work !!

    Reply
  16. @All: thank you for your comments and support! Hope this will be useful series for all. Always we are here to help you.

    Reply
  17. It is really useful. And it helps me a lot. The articles about soapui are very very less in China’s website. But I learn more here. Thank you very much.

    Reply
  18. Nice and very deep analysis about SoapUI!
    However if your requirement is just to check webservice if working fine or not without any fancy SoapUI functionalities, you could try Postman. It is simpler and lighter than SoapUI.

    Reply
  19. Very nicely written article, Karuna and Swati…

    It is a very good starting point for newbies who want to get started with this interesting form of web services testing.

    I use soapUI almost on a daily basis for services testing and it saves a lot of time and you can even start testing even before the UI is even developed, to identify early defects in the webservice layer.

    Cheers!

    Reply
  20. So desperately!! I have been looking for some good soap ui tutorials and it seems I got in the right place 🙂

    Reply
  21. We have used TestingWhiz for our project recently and it worked well for us. When compared to other tools we found it to be very economic and they give good customer support. Keep it up guys! Its worth a free trial or a free demo. We started with Free trial and now looking forward to extend the license or purchase it. Also they have released new features recently, do have a look.

    Reply
  22. Hi,

    Nice article. Thanks to STH.

    Here SOAP stands for Simple Object Access Protocol or Simple Access Object Protocol.

    In this tutorial it is written as Simple Access Object Protocol.

    I am bit confused. can you please clarify?

    Thank you.

    Regards,
    Ravi

    Reply

Leave a Comment