testen im vorgehensmittelpunkt mit behaviour-driven ...€¦ · demo e i g e n e n t w i c k l u n...

31
1 ZUHÖREN. ANALYSIEREN. BERATEN. SIDION

Upload: others

Post on 16-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

1

ZUHÖREN. ANALYSIEREN. BERATEN.

SIDION

Page 2: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

2

M i s c h k a H ö f l i n g & A z m i r A b d i

a g i l e t e s t i n g 2 0 1 9 – S A E C D a y s 2 0 1 9 – M i 5 . 2

TESTEN

IM VORGEHENSMITTELPUNKT

MIT BDD

Page 3: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

3

WER SIND WIR?B u s i n e s s - A n a l y s t & S o f t w a r e - A r c h i t e k t

L a n g j ä h r i ge E r f a h r u n g u n d Z u s a m m e n a r b e i t

b e i d e r F i rm a s i d i o n

Mischka Höfling

Business-Analyst.

Requirements Engineer.

Projektmanager.

Prozessmanager.

Führungskraft.

Azmir Abdi

IT-Architekt.

Software-Integrations-Experte.

Softwareentwickler.

Projektmanager.

Führungskraft.

Page 4: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

4

SYSTEM UNDER TESTA u s g a n g s s i t u a t i o n

Z u s t a n d & A n we n d u n g s f a l l - D ia g r a m m d e s b e t r o f f e n e n S ys t e m s

BROWNFIELD SOFTWARE

Die Software existiert bereits über 20 Jahren

REST SERVICES

Die Funktionen werden hauptsächlich als REST-Services

bereitgestellt

MONOLITISCHE ARCHITEKTUR

Auch wenn das System in mehreren Modulen aufgeteilt ist sind

diese monolithischer Schichten-Architektur

FUNKTIONS-TESTFÄLLE

Vorhandene Funktions-Testfälle werden manuell ausgeführt

NIEDRIGE TESTABDECHUNG

Älteste Software-Komponenten ohne

Unit-Test-Code

Page 5: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

5

ORGANISATIONA u s g a n g s s i t u a t i o n

P r o j e k t o r g a n i s a t i o n h i n t e r d e s b e t r o f f e n e n S ys t e m s

PROJEKTLEITUNG

PROJEKT OFFICE

TEST-TEAM

FACH-TEAM

ENTWICKLUNGS-TEAM

Page 6: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

6

ORGANISATIONA g i l e T r a n s f o r m a t i o n

P r o j e k t o r g a n i s a t i o n h i n t e r d e s b e t r o f f e n e n S ys t e m s n a c h d e r a g i l e n Tr a n s f o r m a t i o n

SCRUM OF SCRUMS

SCRUM TEAM 3

SCRUM TEAM 1

SCRUM TESM 2

Page 7: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

7

MIGRATIONA g i l e T r a n s f o r m a t i o n

M i g r a t i o n v o n d e m k l a s s i sc he n z u m a g i l e n Vo r g e h e n

Akzeptanzkriterien als Bestandteil

der Tickets oder Sub-Tasks.Umfangreichen Text-Dokumenten

Häufig auf der Strecke gebliebener

Testausführung wegen Zeitdrucks

Fachspezifikationen

Unkonkreten Akzeptanzkriterien

Separaten Test-Strategien & Testfällen

Epics und Stories in einem

Ticket-System.

Hoher Grad an Testautomatisierung

Akzeptanzkriterien

Akzeptanztests in Gherkin-Sprache

mit konkreten Testdaten bereits im

Rahmen der Refinements definiert

Ein Team zuständig für vier Module

Drei Teams mit aufgeteilten Modulen

Page 8: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

8

WIESO TESTEN?T e s t e n i n a g i l e n P r o j e k t e n

Wa s wä r e d i e A l t e r n a t i v e n i c h t t e s t e n !?

Page 9: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

9

WIE TESTEN?T e s t e n i n a g i l e n P r o j e k t e n

U n i t Te s t s s i n d g e s e t z t , a b e r w i e v e r f ä h r t m a n

m i t S ys t e m - u n d I n t e g r a t i o n s t e s t s i n a g i l e n P r o j e k t e n ?

M e t h o d i k . To o l s . Te c h n o l o g ie

Page 10: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

10

SYSTEM- UND INTEGRATIONSTESTSW i e s e t z t m a n S y s t e m - u n d I n t e g r a t i o n s t e s t s u m ?

E i n U n t e r n e h m e n d a s S o f t wa r e e n t w i c k e l t s o l l d i e s e

a u c h i n d e r e i n e r n i c h t i s o l i e r t e n U m g e b u n g ( i n t e g r i e r t e U m g e b u n g ) t e s t e n .

Ein Test-Team

Mit einem Test-System

K L A S S IS CH…

A G I LE ?

Page 11: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

11

WIE ENTSCHEIDEN?E n t s c h e i d e n i n a g i l e n P r o j e k t e n

W i e f ä l l t m a n E n t s c h e id u ng e n

i n a g i l e n P ro j e k t e n ?

Page 12: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

12

AGILE WERTER ü c k b l i c k

A u c h t e c h n i s c h e E n t sc he id un g e n im a g i l e n U m f e l d

s o l l t e n s i c h a n a g i l e n We r t e n & P r i n z i p en o r i e n t i e r e n .

INDIVIDUEN UND

INTERAKTIONEN

MEHR ALS

PROZESSE UND

WERKZEUGE

FUNKTIONIERENDE

DIENSTLEISTUNGEN

MEHR ALS

UMFASSENDE

DOKUMENTATION

ZUSAMMENARBEIT

MIT DEM KUNDEN

MEHR ALS

VERTRAGS-

VERHANDLUNG

REAGIEREN AUF

VERÄNDERUNG

MEHR ALS

DAS BEFOLGEN

EINES PLANS

Page 13: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

13

AGILE PRINZIPIENR ü c k b l i c k

A u c h t e c h n i s c h e E n t sc he id un g e n im a g i l e n U m f e l d

s o l l t e n s i c h a n a g i l e n We r t e n & P r i n z i p en o r i e n t i e r e n .

Lieferungen unter

Berücksichtigung von

Kundenrückmeldungen

K O N T I N U I E R L I C H

Errichte Projekte rund um

motivierte Individuen

I N D I V I D U E N

Jeder Teammitglied bringt

ausreichen fachliches, soziales und

organisatorisches Können mit

E X P E R T I S E

Auch späte Änderungen sind

willkommen

V E R Ä N D E R U N G

Führe Gespräche von Angesicht zu

Angesicht

K O M M U N I K AT I O N

Eliminiere Verschwendung und

unnötige Tätigkeiten

V E R M E I D E M U D A

Liefere alle vier Wochen aus

R E G E L M Ä S S I G

Liefere funktionierende

Software

Q U A L I T Ä T

Die besten Ergebnisse entstehen

durch selbstorganisierte Teams

S E L B S T-

O R G A N I S AT I O N

Verschiedene Bereiche in der

täglichen Zusammenarbeit

C R O S S -

F U N C T I O N A L

Kunde und Scrum-Team halten

ein gleichmäßiges Tempo

R H Y T H M U S

Team reflektiert regelmäßig wie

es effektiver werden kann und

passt sich entsprechend an

R E T R O S P E K T I V E

Page 14: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

14

AGILE SYSTEM- UND INTEGRATIONSTESTS?T e s t e n i n a g i l e n P r o j e k t e n

M ü s s e n d i e k l a s s i sc he n Te s t m a n a g e r u n d Te s t e r

a g i l we r d e n ?

Scrum Rollen

Product Owner . Scrum Master . Entwickler-Team

Alle notwendige Funktionen wie Entwickeln & Testen

Grundkenntnisse sind breit vertreten

Spezialkenntnisse sind individuell besetzt

S E L B S T O R G A N I S I E R T E

T E A M S

G U I

S Y S T E M T E S T S

U N I T T E S T S

Software-Qualität

Reviews . Pair Programming

Testen

Integriertes Testen . CI/CD . Testabdeckung Unit Tests

System Tests . Integrationstests

F U N K T I O N I E R E N D E

S O F T W A R EI N T E G R AT I O N S -

T E S T S

Page 15: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

15

MAKE OR BUY

S y s t e m - u n d I n t e g r a t i o n s t e s t s i n a g i l e n P r o j e k t e n

E s i s t d i e Ve r a n t wo r t u n g d e s S c r u m - Te a m s

d i e E n t s c h e id un g z u t r e f f e n

STANDARD OR INDIVIDUAL

Page 16: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

16

R A H M E N B E D I N G U N G E N

B r e i t e s W i s s e n i m S c r u m - T e a m

T e c h n o l o g i e - u n a b h ä n g i g

Zu

ng

li

ch

Tr

an

sp

ar

en

t

Te s t e r s t e l l u ng u n d D u r c h f ü h r u n g v o n d e m E n t w i c k l e r - Te a m

D u r c h M i c r o s e r v i ce s m ü s s e n i m m e r m e h r Te c h n o l o g ien g e t e s t e t we r d e n

A P I s : S OA P, R E S T, M Q, D B s , K a f k a , …

GU I s : H T M L , M o b i l e A p p ‘ s

Inte

rn

un

d E

xte

rn

Inte

rn

un

d E

xte

rn

f ü r e i n Te s t i n g - F r a m e wo r k i m a g i l e n P r o j e k t

Page 17: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

17

TECHNOLOGIEWAHLE r f a h r u n g s b e r i c h t

E r f a h r u n g s b e r i c h t a u s e i n e m a g i l e n P r o j e k t

A U S G A N G S S I T U AT I O N

Einsatz von HP ALM & UFT

Ein Testing-Team

Stätiges Wachstum an Diskrepanz zum Entwickler-Team

Lange Aufwendige Testphase

Wachsendes Anzahl der Störmeldungen

U M D E N K E N I N Q S

N O T W E N D I G

Testphase mit BDD und Cucumber Framework aufgrund

der Java-Entwicklung

Sehr große Akzeptanz von dem Entwicklern

Erster Technischer Durchstich mit dem Haupt Use Case

nach ca. eine Woche lauffähig

Und wie sieht das Ganze aus?

Page 18: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

18

LÖSUNGE i g e n e n t w i c k l u n g f ü r S y s t e m - u n d I n t e g r a t i o n s t e s t s

B e h a v i ou r - D r i v en D e v e l o p m e n t ( B D D ) M e t h o d i k

u n d a g i l e P r o j e k t v o r g e he n b e g ü n s t i g en s i c h g e g e n s e i t i g

J e d e f a c h l i ch e D o m ä n e w i r d v o n e i n e m S c ru m - Te a m v e ra n t wo r t e t

m i t e i n e m n a c h D o m ä n e n s e p a r i e r t e n Te s t P r o j e k t

v o n S c r u m - Te a m s e l b s t g e t e s t e t

Page 19: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

19

A b s t r a k t e S t e p s

R E S T C a l l , K a f k a C l i e n t , Wa i t S t e p , …

Wo r l d Ob j e k t

N a c h r i c h t e n ge n e r a t o r

S wa g g e r / J s o n S c h em a , X S D

K o n k r e t e S t e p s w i e

We n n i c h e i n e n K u n d e n a n l e g e

U m g e b u n g s k o n f i g u r a t i o n

w i e U R L , Z u g a n g s d a t e n , …

Te s t S z e n a r i e n

G i v e n / W h e n / T h e n K o m p o s i t i on d e r S t e p s

Te s t D a t e n

LÖSUNGE i g e n e n t w i c k l u n g f ü r S y s t e m - u n d I n t e g r a t i o n s t e s t s

D u r c h f a c h l i c he A u f t e i l u ng s o l l e n d i e g e g e n s e i t i g e A b h ä n g ig ke i t e n z w i s c h e n

d e n S c r u m - Te a m s m i n i m i s i e r t we r d e n .

S ys t e m U n d e r Te s t ( S U T )

Page 20: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

20

goGherkin

CMS

Testing

CRM

Testing

CR

Testing

CRM CMS CR

DEMOE i g e n e n t w i c k l u n g f ü r S y s t e m - u n d I n t e g r a t i o n s t e s t s

D r e i M i c r o s e r v i ce s e r r e i ch b a r ü b e r d i e R E S T A P I & S wa g g e r

C u s t o m e r R e l a t i o n sh ip M a n a g e m e n t ( C R M ) : s p e i c h e r t P e r s o n e n - D a t e n

C o n t r a c t M a n a g e m e n t S ys t e m ( C M S ) : s p e i c he r t Ve r t r a g s d a t e n

C o n t ra c t R e q u e s t S e rv i c e (C R ) : s p e i c h e r t A n t r ä g e

& o r c h e s t r i e r t C R M u . C M S

C r e a t e n e wp e r s o n

C r e a t e n e wc o n t r a c t

C r e a t e n e wc o n t r a c tr e q u e s t

Page 21: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

21

DEMO

Page 22: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

22

D e m o P r o j e k t

S p r i n g B o o t M i c r o s e r v i c e e r r e i ch b a r ü b e r d i e R E S T A P I & S wa g g e r

C u s t o m e r R e l a t i o n sh ip M a n a g e m e n t ( C R M ) : s p e i c h e r t P e r s o n e n - D a t e n

CRM REST API

Page 23: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

23

D e m o P r o j e k t

Gh e rk i n f e a t u re F i l e

J a v a g l u e C o d e

CRM-Testing

Page 24: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

24

D e m o P r o j e k t

J U n i t R e p o r t

C u c u m b e r H T M L R e p o r t

CRM-Testing

Page 25: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

25

D e m o P r o j e k t

J U n i t R e p o r t

C u c u m b e r H T M L R e p o r t

Regression-Testing

Page 26: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

26

E n d - To - E n d S z e n a r i e n

K e i n e Te s t - S t e p s

A u f r u f e d e r e x i s t i e r e n d e r

Te s t - S t e p s

E2E / REGRESSIONE i g e n e n t w i c k l u n g f ü r S y s t e m - u n d I n t e g r a t i o n s t e s t s

D u r c h W i e d e r v e r we n d u n g d e r i m p l e m e n t i e r t e n Te s t - S t e p s i s t e s b e i m B e d a r f

e i n f a c h m ö g l i c h I n t e g r i e r t e Te a m ü b e r g r e i f e n d e Te s t s a u f z u s e t z e n .

Page 27: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

27

ERFOLGSFAKTOREND i e i d e n t i f i z i e r t e n

l e i d e r i n d e r R e a l i t ä t n i c h t i m m e r a l l e e r f ü l l t

Product Owner ist

Mitarbeiter des Auftraggebers.

FA K T O R E I N S

Product Owner ist in die Definition

der Regressionstestfälle involviert.

FA K T O R V I E R

Product Owner versteht den Wert

von Testautomatisierung und stimmt

Akzeptanztests im Detail ab.

FA K T O R Z W E I

Entwicklungs-Team setzt

Akzeptanz-Tests um.

FA K T O R D R E I

1

2

3

4

Page 28: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

28

TEST SET-UPZ i e l

A l l e B e t e i l i g t e n s i n d i n s Te s t e n i n v o l v i e r t

Page 29: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

29

FALLSTRICKED i e i d e n t i f i z i e r t e n

l e i d e r d i e R e a l i t ä t

Erfüllung aller Kriterien für den

Test-Beginn zum Zeitpunkt von

Software-Build und -Deployment?

FA L L S T R I C K E I N S

Performance:

Ausführungsdauer der Testfälle.

FA L L S T R I C K V I E R

Testdaten-Qualität in der

Test-Umgebung.

FA L L S T R I C K Z W E I

Abgrenzung von Ende-zu-Ende

Black-Box-Testing zu White-Box-

Testing:, eher Grey-Box-Testing.

FA L L S T R I C K D R E I

1

2

3

4

Page 30: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

30

Testen von Eigenschaften

an Stelle des Testens des

Verhaltens (abgeleitet aus

dem Property-Based Testing

(PBT))

P B T

VERBESSERUNGSPOTENZIALEA u s b l i c k

E r f a h r u n g s b e r i c h t a u s e i n e m a g i l e n P r o j e k t

Zufällig generierte Testdaten,

idealer Weise basierend auf

vordefinierbaren Rahmen-

bedingungen Äquivalenz-

klassen-Definition

Grenzwert-Definition

T E S T D AT E N

Datentypen-Tests nicht

typisierter REST-

Schnittstellen-Parameter

D AT E N T Y P E N Unterscheidung von keinem

Input-Wert und <null> als

definiertem Input-“Wert“

N U L L - W E R T

Page 31: Testen im Vorgehensmittelpunkt mit Behaviour-Driven ...€¦ · DEMO E i g e n e n t w i c k l u n g f ü r S y s t e m - und Integrationstests Drei Microservices erreichbar über

31

FRAGEN

Mitdenken

Mi tgesta l ten

Mi tarbe i ten

be i s id ion

POWERPOINT TEMPLATE