Approaches to testing service-oriented software systems

  • Authors:
  • Antonia Bertolino

  • Affiliations:
  • ISTI-CNR, Pisa, Italy

  • Venue:
  • Proceedings of the 1st international workshop on Quality of service-oriented software systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The attractiveness and popularity of Service-Oriented Software Systems (SOSSs) stem from the growing availability of independent services that can be cost-effectively composed with other services to dynamically provide richer functionality. Service-orientation however poses new and difficult challenges to testers, especially when it comes to testing the interactions between heterogeneous, loosely coupled and independently developed services. Service integration testing requires discipline, standardized processes, and agreed policies to be put in place, which we referred to as SOA (Service Oriented Architecture) Test Governance (STG). Discovered services usually provide just a syntactical interface, enabling some general black-box tests, but insufficient to develop an adequate understanding of the integration quality between the interacting services. Besides, testing for the functional and extra-functional properties of a composite SOSS cannot generally rely on the ready or full availability, for testing purposes, of all invoked services (e.g., their usage might bring unwanted side effects). In this talk we will survey some of our recent results on SOSSs testing that span over the above needs. We will first discuss how the STG concept is implicit behind any approach to testing composite SOSSs and then give an overview of three different, complementary SOSS test approaches realizing different grades of STG, namely: the state-of-practice prototype tool WS-TAXI, for fully automatic generation of black-box test inputs; the novel SOCT approach allowing for test coverage measurement of independent services without loosing their implementation neutrality; the PUPPET tool for model-based generation of a testbed simulating the functional and extra-functional behavior of invoked external services.