skip to Main Content
SoapUI – The Web Service Testing Tool (An Introduction)

SoapUI – The Web Service Testing Tool (An Introduction)

  • Blog

SoapUI (by SmartBear) is an application that can be used to automate the testing of REST and SOAP web services. There are a number of different types of tests available such as: automated and functional compliance tests, manual and automated load testing and web service security testing. SoapUI also supports the following technologies and features: web service inspection, web service mocking and scripting with Groovy or JavaScript. It has an intuitive user interface and being a relatively mature application (released in 2005) it is bug free and feature rich. SoapUI is designed to be a user friendly web service testing tool and they have a lot of good documentation available on the SoapUI website.

It is worth noting that there are two versions available: SoapUI Open Source (a free version of the software) and SoapUI NG Pro (a paid version with additional features). SoapUI NG Pro has many features that make it easier to use and also comes with a detailed reporting module (that SoapUI Open Source is unfortunately lacking).  Another big advantage of SoapUI NG Pro is that you can create composite projects. Composite projects are split into separate files which can help when using a version control system (such as Git). A normal (non-composite) SoapUI project is saved in a single XML file. For complicated projects, this XML file can get quite large. Hence, there can be issues, and conflicts will often have to be fixed by hand. If you do prefer to use the free version, however, it is quite possible to set up your web service testing with SoapUI Open Source, and this is the version that I will be focussing on in this blog post.

When comparing SoapUI to other applications it is clearly one of the market leaders in web service testing tools. One such alternative is Postman (created by Google). Postman allows you to create and run tests automatically (using Newman), but it does not have load testing capabilities and all tests are written in JavaScript. Jmeter (created by Apache) is another good option. It has many plugins, making it highly extendable. It is a powerful application for testing a wide range of different types of resources (not just web services). It does, however, require a longer learning curve, and SOAP requests need to be previously created (SoapUI can mock this functionality). Jmeter is also highly focussed on load testing (which is why all its components are geared towards this kind of testing) and has a slightly outdated and unintuitive graphical user interface. In comparison to these applications, SoapUI has a simpler user interface and many functions that make it easier to use “out of the box”. Users with little to no programming or scripting experience can start using the application to test a web service (basic assertions do not require scripts to be manually written). This does not mean that it is not a customisable testing tool: complex scripted tests can be created using the Groovy programming language or JavaScript.

As with both Postman and Jmeter, it is possible to integrate SoapUI into your Continuous Integration platform (Jenkins, TeamCity etc.) if required. The key selling point of SoapUI is that it contains a complete package of web service testing tools and is not focussed on just one section of the market, whether this is automated compliance testing (such as is the case with Postman) or load testing (Jmeter). It is proving to be a one-stop open source solution for API testing that IT professionals can trust and rely on.

 

Written by David Creer

Leave a Reply

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

Back To Top