Executable interface specifications for testing asynchronous creol components

  • Authors:
  • Immo Grabe;Marcel Kyas;Martin Steffen;Arild B. Torjusen

  • Affiliations:
  • Christian-Albrechts University Kiel, Germany;Department of Computer Science, Freie Universität Berlin, Germany;Department of Informatics, University of Oslo, Norway;Department of Informatics, University of Oslo, Norway

  • Venue:
  • FSEN'09 Proceedings of the Third IPM international conference on Fundamentals of Software Engineering
  • Year:
  • 2009

Quantified Score

Hi-index 0.01

Visualization

Abstract

We propose and explore a formal approach for black-box testing asynchronously communicating components in open environments. Asynchronicity poses a challenge for validating and testing components. We use Creol, a high-level, object-oriented language for distributed systems and present an interface specification language to specify components in terms of traces of observable behavior. The language enables a concise description of a component’s behavior, it is executable in rewriting logic and we use it to give test specifications for Creol components. In a specification, a clean separation between interaction under control of the component or coming from the environment is central, which leads to an assumption-commitment style description of a component’s behavior. The assumptions schedule the inputs, whereas the outputs as commitments are tested for conformance with the specification. The asynchronous nature of communication in Creol is respected by testing only up-to a notion of observability. The existing Creol interpreter is combined with our implementation of the specification language to obtain a specification-driven interpreter for testing.