Chapter 1. Introduction to SOA Testing
With the increase in implementation of service-oriented architecture (SOA), architecture across applications leads to various technological and business advantages to the organizations implementing it.
But as it's said; There are two sides to every coin, with SOA architecture came advantages such as the following:
- Reusability
- Better scalability
- Platform independency
- Business agility
- Enhanced security
But there are also disadvantages:
- Increased response time
- Service management effort is high
- Implementation cost is high
In this chapter we will study the following topics:
- Introduction to SOA
- SoapUI architecture
- Test levels in SOA testing
- SOA testing approach
- Introduction to functional, performance and security testing using SoapUI
- Is SOA really advantageous?
Well, let's talk about a few of the advantages of SOA architecture:
- Reusability: If we want to reuse the same piece of functionality exposed via a web service we should be absolutely sure that the functionality of the service is working as expected; security of the service is reliable and has no performance bottlenecks.
- Business Agility: With more functional changes being easily adopted in a web service, we make the web service prone to functional bugs.
- Enhanced Security: Web services are usually wrapped around systems that are being protected by several layers of security like SSL and usage of security tokens. Use of the business layer to protect the technical services to be directly exposed is usually handled by these layers. If the security of these layers is removed, the web service is highly vulnerable. Also the use of XML as a communication protocol opens the service to XML based attacks. So to mitigate risks we have SOA testing, and to help you test SOA architecture we have multiple testing tools on the market for example; SoapUI, SoapUI Pro, HP Service Test, ITKO LISA and SOA Parasoft.
But the most widely used and open source tool in the SOA testing arena is SoapUI. Following is a comparative analysis of the most famous tools in the Web service testing & test automation arena.
Comparative Analysis:
As we can see by the preceding comparison metrics, Ease of use, Learning curve, and Cost play a major role in selection of a tool for any project. So to learn ITKO LISA or SOA Parasoft, there is very limited, or no, material available on the Internet. To get resources trained you need to go to the owners of these tools and pay extra and then pay more if you need the training a second time.
This gives additional advantages to SoapUI and SoapUI Pro to be the first choice for Test Architects and Test Managers for their projects.
Now let's talk about the closely related brothers in this subset; SoapUI & SoapUI Pro are from the same family, Eviware, which is now SmartBear. However, SoapUI Pro has an enriched functionality and GUI which have additional functionalities to help reduce the time for testing, justifying its cost as compared to SoapUI open source.
Here is a quick comparison:
The additional functionality that is available in SoapUI Pro can be achieved by SoapUI using Groovy script. To sum up everything that is given as UI functionality in SoapUI PRO is achievable with little effort in SoapUI which finally makes SoapUI open source the preferred choice for tool pickers.