QAI eLearning Logo  
QAI elearning - A Division of QAI
QAI logo
 
  Home About Us Products and Solutions Organizations FAQs Contact Us  
Home >

Introduction to Testing Webservices

Introduction to Testing Webservices

 
 
   
 
   
 

Internet revolutionized the way information/data is made available to general public or business partners. Web services complement this by allowing data exchange between applications in a platform independent manner. A Web service is a software system identified by a URI, whose public interfaces and bindings are defined and described using XML. Its definition can be discovered by other software systems. These systems may then interact with the Web service in a manner prescribed by its definition, using XML based messages conveyed by Internet protocols. The major challenges faced by the testers of webservices are the absence of a user interface, scalability and security considerations and the distributed nature of webservices. For tackling these challenges the webservice testing strategy must involve proof of concept testing, unit testing, basic webservice testing, testing the SOA, interoperability testing and load testing. This white paper starts by describing the major challenges faced by the Web services testing community. It then discusses the strategy recommended to test the webservice, followed by a short discussion on Interoperability testing and Load testing. It also includes the use of JMeter (an automated load testing tool) to test webservices. And towards the end the paper highlights some of the major web services testing tools currently available.

Introduction to Webservices

 

Webservices is a technology that allows applications to communicate with each other in a platform independent manner. Primarily webservices target issues of data and application integration. They help us in exposing business processes as methods or functions, which in turn allow businesses to communicate at an application or process level with business partners.

 

XML based protocols are used to describe a webservice and standardized XML messages are used by the webservice for communication with other services or with the client.

Webservices are described using Web Services Description Language (WSDL). The WSDL consists of the URL for the webservice, the methods that are accessible and the input parameter types and the return types of the webservice.

Standard Object Access Protocol (SOAP) is used as the messaging standard for communicating with the webservice. The message is wrapped in a SOAP Envelope, which can be delivered across network over most known transport protocols like HTTP, IIOP, and SMTP and so on.

Webservices are published and located with the help of Universal Description, Discovery and Integration (UDDI).

   
   
 

Challenges in Testing Webservices

 

The loosely coupled nature of webservices and non-existence of a User interface present a challenge to the developers and testers alike. Following are some of the challenges that webservice testers have to face.

   
 

Scalability and Security

 

The development and deployment environments of webservices are vastly different. If the webservice is for intranet usage then we have a theoretical maximum number of users that will connect to the service and also we have control over who can access the webservice so we have some security in place. But the scenario for Internet webservice is different. There we cannot make any assumptions about the number of users connected to the service, security or the way in which the users will access the web service. Also we must know in advance the performance impact in case of large number of users connecting to the webservice.

   
 

Absence of User Interface

 

Unlike traditional web applications web services do not have a user interface. Hence they cannot be tested manually but require writing of test cases. For this the tester needs to have programming skills and an overview of the webservices fundamentals.

   
 

Distributed Across Network

 

Applications are generally built by integrating many webservices to leverage existing webservice functionality. These webservices may be developed by the same developers or may be provided by a third party. So thorough black box testing must be performed. Also these services are distributed over the network and may be hosted on different operating systems and deployed in different environments. Hence while testing we have to take into consideration the issues of availability, performance, reliability and security.

To read the complete article please click here

     

CMM IntegrationSM, SCAMPISM, SCAMPISM Lead Appraiser, TSPSM, and IDEALSM are service marks of Carnegie Mellon University. CMMI®, Capability Maturity Model®, Capability Maturity Modeling®, CMM® and Carnegie Mellon® are registered in the US Patent and Trademark Office by Carnegie Mellon University. ITIL® is a Registered Trade Mark of the Cabinet Office (HM, Govt of UK) in the United Kingdom and other countries. CBTL and CBQA are service marks of QAI India Ltd. "PMI®" and the PMI® logo are service and trademarks registered in the United States and other nations. "PMP®" and the PMP® logo are certification marks registered in the United States and other nations.
© QAIeLearning and its licensors.