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