What is SOAP UI?

  • SOAP UI is the leading open source cross-platform API Testing tool
  • SOAPUI allows testers to execute automated functional, regression, compliance, and load tests on different Web API.
  • SOAPUI supports all the standard protocols and technologies to test all kinds of API's.
  • SOAPUI interface is simple that enables both technical and non-technical users to use seamlessly.

What is SoapUI? Introduction to SoapUI Testing  

Why use SOAPUI?

SOAPUI is not just a functional API testing tool but also lets us perform non-functional testing such as performance and security test.

Let us discuss the 5 important features of SOAPUI

1) Functional Testing

  • A powerful tool allows testers to write Functional API Tests in SoapUI
  • Supports Drag-Drop feature which accelerates the script development
  • Supports debugging of tests and allows testers to develop data driven tests.
  • Supports Multiple Environments - Easy to switch between QA, Dev and Prod Environments
  • Allows advanced scripting (tester can develop their custom code depending on the Scenario)
 

2) Security Testing

  • Has the capability to perform a complete set of vulnerability scan.
  • Prevents SQL Injection to secure the databases
  • Scans for Stack overflows that are caused by documents huge in size
  • Scans for Cross Site Scripting, which usually occurs when service parameters are exposed in messages.
  • Performs Fuzzing scan and Boundary scan to avoid erratic behavior of the services.
 

3) Load Testing

  • Distribute the Load Tests across any number of loadUI Agents.
  • Simulate high volume and real-world load testing with ease.
  • Allows Advanced custom reporting to capture performance parameters.
  • Allows End-to-End System Performance Monitoring
     

4) Supported Protocols/Technologies:

SoapUI has the most comprehensive Protocol Support

What is SoapUI? Introduction to SoapUI Testing

5) SOAP-INTEGRATION with Other Automation Tools:

SoapUI integrated very well with popular tools

  • Maven

    What is SoapUI? Introduction to SoapUI Testing

    Apache Maven is a software project management tool that can manage a project's build, reporting and documentation from a central repository. Maven can also execute SOAPUI tests within Maven Build using simple commands.

  • HUDSON

    What is SoapUI? Introduction to SoapUI Testing

    HUDSON, a Java based Continous integration tool and integrates with tools such as CVS, Subversion, Git, Perforce, Clearcase, and RTC. SOAPUI also integrates with HUDSON, which helps us to spot bugs quickly for each and every commit by the developers.

  • JUnit

    What is SoapUI? Introduction to SoapUI Testing

    JUnit is a unit testing framework built in Java, which can control the flow of tests from SOAPUI as well.

  • Apache - Ant
    What is SoapUI? Introduction to SoapUI Testing

    Apache Ant, a Java library which is a command-line tool that helps in building software. Using SOAP UI's Command line, we can execute tests within an ANT Automated Build.

SOAP UI Vs Selenium:

Let's compare SoapUI with Selenium

SOAP UI

Selenium

SOAP UI is NOT used for User Interface Testing. It is only used for WebAPI or WebService TestingSelenium is used for User Interface Testing.
Capability to test the data sent and received between the web browser and a web server. Can test the protocols/technologies such as REST, SOAP.Selenium cannot test protocols, but they can test the UI behavior.
Able to perform functional, load and security testing of the above-mentioned technologies.Selenium can perform only functional testing. Performance testing to some extent because we can track execution time with regards to the performance but cannot test multi user and multi tenancy. Selenium certainly cannot be used for security testing.
It is PROTOCOL Dependent and NOT browser dependent.Selenium depends on the browser capabilities.
 

SOAP UI Vs SOAP UI PRO

 

We know that there are two flavors of SOAP UI, One being SOAP UI (Open source version) while the other one is SOAP UI PRO. Let us understand the difference between these two flavors and we will also discuss when to go for use what.  

FeaturesSOAP UI (Open Source Version)SOAP UI PRO
Supported Technologies
SOAP/WSDLWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
RESTWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
JMSWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
AMFWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
JDBCWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
HTTPWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
 
Automation
Functional TestsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Load Tests    What is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Mock ServicesWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Code GenerationWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Command LineWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
MavenWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
CI and Build IntegrationWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
General Features
Standalone ApplicationWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Groovy Code TemplatesWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Multi Environment SupportWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Floating LicensesWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
 
Functional Testing features
WSDL CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Request/Response CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Message AssertionWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Test RefactoringWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Running of Multiple TestsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Data Source Driven TestsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Scripting LibrariesWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Unit ReportingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Manual Test StepWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Security Testing features
Boundary ScanWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Invalid TypeWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
SQL InjectionWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
XPath InjectionWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
XML BombWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Fuzzing ScanWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Cross Site ScriptingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Configurable ScansWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
ReportingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Load Testing Features
Rapid Load Tests from Functional TestsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Configurable Load StrategiesWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Load Test AssertionsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Real-Time StatisticsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Performance MonitoringWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Statistics ExportingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Setup/TearDown using Groovy ScriptingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
loadUI IntegrationWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
ReportingWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Reports
JUnit ReportsWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Report Data ExportWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
WSDL HTML ReportWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
WSDL CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
TestSuite CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
TestCase CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Assertion CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing
Message Recording CoverageWhat is SoapUI? Introduction to SoapUI TestingWhat is SoapUI? Introduction to SoapUI Testing

 

When use SoapUI PRO Version?

  • Data Driven: PRO Version, helps us to work with an external data source such as text files, XML, Groovy, Excel, file, and Databases. This helps us to scale our tests with a range of inputs driven through the above-said sources.
     
  • Test Coverage: PRO Version allows testers to get a statistic report which shows the functionalities that are well tested and also the areas that are NOT thoroughly tested as well. The drill down reports even pinpoints exactly what has NOT been tested and what has NOT been asserted.
     
  • Test Debugging: You can then run the test to that breakpoint and view the current value of the SoapUI properties. The Test Debugging Interface simplifies following Test Flow, Variables, Properties, Requests, Context, and much more, making test creation and improvement more streamlined.
     
  • Multi-Environment Support: Working with multiple environments such as DEV, QA, Pre-PROD environment can be a daunting task with the open source version as testers need to change the end points to execute in different environments. PRO version helps us to switch between environments seamlessly.
     
  • Reporting: PRO version is loaded with many options to customize reports that generate detailed reports at Project, TestSuite, TestCase or LoadTest level. It also produces reports in various formats such as PDF, HTML, Word or Excel.
     
  • Security Testing: Both SOAP UI versions has capabilities to test for security vulnerabilities such as XML bombs, SQL injections, fuzzing, cross-site scripting. However, only SOAP UI PRO can perform vulnerability scans using Security Test Generator using a mouse click.
     
  • SQL Builder: For Non-Technical testers writing complex SQL Query can be cumbersome. The SOAP UI PRO's SQL Builder can help them in creating SQL Query using the SQL Builder's graphical interface. This feature helps us to accelerate the implementation of data-driven testing.

     

  • Support: As part of the license agreement SOAP UI Pro has exclusive support apart from the online forum support.
     
 

We will be using the Open Source version of SoapUI for our training purpose.

SOAP UI – Version Timelines

Major version Release Notes Release date
V1.0 Initial Release 16-10-2005
v1.5 Load Testing Release 06-04-2006
v1.6 Tools Release 12-11-2006
V1.7 The Pro Release 10-04-2007
v2.0 Coverage Release 12-12-2007
v2.5 REST Release 18-11-2008
v3.0 Reporting Release 09-07-2009
v3.5 Protocol Release 01-03-2010
v3.6 LoadUI Release 14-09-2010
v4.0 Security Release 14-06-2011
v4.5 Big Ears Release 28-03-2012
v5.1 The Plugged in Release 05-09-2014
v.5.2 Major New Features Release 02-07-2015
v.5.3 Bundled Plugin Release 05-12-2016