Testfallgenerierung fuer interagierende Services

Preview:

DESCRIPTION

Vortrag auf dem Workshop ATAMI 2010 im Januar 2010 in Berlin Presentation (in German) in the workshop "Advances in Testing: Academia Meets Industry" in Jan 2010 in Berlin

Citation preview

UNIVERSITÄT ROSTOCKUNIVERSITÄT ROSTOCK

Testfallgenerierungfür interagierende

Services

Testfallgenerierungfür interagierende

ServicesKathrin Kaschner, Niels Lohmann, KarstenWolf

ATAMI 2010 ▪ Berlin ▪ 15. Januar 2010Kathrin Kaschner, Niels Lohmann, KarstenWolf

ATAMI 2010 ▪ Berlin ▪ 15. Januar 2010

www.service‐technology.org 2

B

D

Services

A

C

– selbstständige ausführbare Softwarekomponenten

– zustandsbehaftet

– Interaktion mit anderen Servicesbeliebig komplexasynchron

www.service‐technology.org 3

Interaktion mit der Umgebung

BA

Interagiert die Implementierung eines Services so, wie es  von der Spezifikation verlangt wird?

Relevant für:Public Vieweigenen Workflow

www.service‐technology.org 4

Interaktion mit der Umgebung

spez. Protokoll

Modellierung mit Petrinetzen

BPEL: gängiger Standard zur Beschreibungvon Interaktionen

Tool: BPEL2oWFN

www.service‐technology.org 5

Interaktion mit der Umgebung

impl. Protokollspez. Protokoll

www.service‐technology.org 6

keine Deadlocks (bei korrekter Impl.)

Protokoll beschreibt implizit eine Menge von Partner‐Services:

Interaktion mit der Umgebung

spez. Protokoll

www.service‐technology.org 7

Testfall = Partner‐Service

⇒ kein Deadlock während Interaktion

spez. Protokoll

mögliche Partner‐Services

www.service‐technology.org 8

Testfall = Partner‐Service

Wie können die Partner systematisch berechnet werden?

Antwort: mit Hilfe von Bedienungsanleitungen

⇒ kein Deadlock während Interaktion

mögliche Partner‐Services

www.service‐technology.org 9

Bedienungsanleitung

–charakterisiert alle Partner

– Kanten:? = empfangen! = senden

–Zustände mit Boolesche Annotationen

–Partner gdw.1. Subgraph2. Annotationen sind erfüllt

– kann generiert werden (Tool: Wendy)

www.service‐technology.org 10

Testfall

Testen mit Partner‐Services

Protokoll

Bedienungsanleitung

www.service‐technology.org 11

Partner‐Selektion

– Bedienungsanleitung charakterisiert alle Testfälle (i.A. unendl. viele)– es gibt jedoch Redundanzen unter den Testfällen⇒ Auswahl einer kleineren Testmenge ohne Redundanzen

– Kriterium: Annotationen

–Kann durch eine Tiefensuche realisiert werden – Trotz Reduktion bleiben wir vollständig!

!details!details

!details - !offer

… …

!details !offer

!offer!offer

www.service‐technology.org 12

– BPEL2oWFN: übersetzt BPEL‐Prozesse in ein formales Model– Wendy: berechnet die Bedienungsanleitung– oWFN2BPEL: generiert aus formalen Model einen BPEL Prozess

Spezifikationabstract BPEL

konform

Test‐fall

reduzierteTest‐Suites

Implementationexecutable BPEL,Java, .NET

Petri Netz

BPEL2oWFN

Bedienungsanl.

Wendy

testen

oWFN2BPEL

Test‐fall

BPEL Test Suites

www.service‐technology.org

www.service‐technology.org 13

Spezifikationabstract BPEL

konform

Test‐fall

reduzierteTest‐Suites

Implementationexecutable BPEL,Java, .NET

Petri Netz

BPEL2oWFN

Bedienungsanl.

Fiona

testen

oWFN2BPEL

Test‐fall

BPEL Test Suites

– Bisher: nur Kontrollfluss– Future Work: Daten

www.service‐technology.org

Vielen Dank!Fragen?

Vielen Dank!Fragen?

www.service‐technology.org 14

Kontakt

eMail: kathrin.kaschner@uni‐rostock.de

Web: www.service‐technology.orghttp://wwwteo.informatik.uni‐rostock.de/ls_tpp/index.htm