Testing of data-centric and event-based dynamic service compositions

Waldemar Hummer, Orna Raz, Onn Shehory, Philipp Leitner, Schahram Dustdar

Research output: Contribution to journalArticlepeer-review

13 Scopus citations

Abstract

This paper addresses integration testing of data-centric and event-based dynamic service compositions. The compositions under test define abstract services that are replaced by concrete candidate services at runtime. Testing all possible instantiations of a composition leads to combinatorial explosion and is often infeasible. We consider data dependencies between services as potential points of failure and introduce the k-node data flow test coverage metric, which helps to significantly reduce the number of test combinations. We formulate a combinatorial optimization problem for generating minimal sets of test cases. On the basis of this formalization, we present a mapping to the model of FoCuS, a coverage analysis tool. FoCuS efficiently computes near-optimal solutions, which are used to automatically generate test instances. The proposed approach is applicable to various composition paradigms. We illustrate the end-to-end practicability based on an integrated scenario, which uses two diverse composition techniques: on the one hand, the Web Services Business Process Execution Language and on the other hand, WS-Aggregation, a platform for event-based service composition.

Original languageEnglish
Pages (from-to)465-497
Number of pages33
JournalSoftware Testing Verification and Reliability
Volume23
Issue number6
DOIs
StatePublished - Sep 2013
Externally publishedYes

Funding

FundersFunder number
Seventh Framework Programme215483, 257574, 257483

    Keywords

    • data-centric service compositions
    • event-based systems
    • k-node data flow coverage
    • test coverage
    • testing service-based systems

    Fingerprint

    Dive into the research topics of 'Testing of data-centric and event-based dynamic service compositions'. Together they form a unique fingerprint.

    Cite this