Web Services are the foundations of modern distributed applications. The ease and flexibility of integrating disparate components has made rapid application development possible across platforms, languages, operating systems and devices so it is very important to understand how Web Services work and how we can test them earlier in project life cycle. Before we jump into testing details we need to understand how it works so let’s see….
What is a Web Service?
A Web Service is a service accessed via Web. Web Service is a way to publish your application over web and enable other applications to access functions defined by your web service. Web services exposes an interface defined in Web Services Description Language (WSDL). Other applications can interact with Web service using the description provided using its WSDL interface. The protocol used to interact with Web Services is Simple Object Access Protocol (SOAP). SOAP is a simple XML-based protocol to let applications exchange information over HTTP.
Why do we need to test Web Services?
1. In the era of modern, web services-based SOA, distributed software components are readily integrated and dependent. This flexibility makes it critical for developers and testing professionals to thoroughly test and certify Web Services before publishing them to consumers.
2. Web Services with incorrect responses can lead to problems. Web Service Functional Testing ensures that your web service is functionally correct.
3. Implementing functional test for your web service early in the software development cycle speeds up development improves quality and reduces risks towards the end of the cycle.
Web Service Testing Tools
There are a number of commercial and open source tools available to test Web Services effectively and efficiently.
Open Source Tools:
SOATest – It is a testing and analysis tool suite for testing and validating APIs and API-driven applications. It thoroughly test composite applications with robust support for REST and web services, plus an industry-leading 120+ protocols/message types.
HP Unified Functional Testing (UFT) Software HP Unified Functional Testing 11.5 combined HP QuickTest Professional and HP Service Test into a single software package. The integrated HP Unified Functional Testing software allows developers to test from a single console all three layers of a program’s operations: the interface, the service layer and the database layer.
IBM® Rational® Service Tester for SOA Quality is a functional and performance testing tool for ensuring the quality of web service based SOA applications. Rational Service Tester for SOA Quality helps quality assurance professionals validate web service based SOA application functionality and scalability for GUI-less Web services.
- Learn more about Web Services using W3Schools.Com
- Want to practice with Web Services….Google provides a public SOAP/XML API to their Web Services. They provide a developer’s kit with samples and instructions on how to use the service. Check it out here