Testen in de transitie naar continuous delivery

21
Software Development Done Right XTA @PGGM TESTEN IN DE TRANSITIE NAAR CONTINUOUS DELIVERY 1

Transcript of Testen in de transitie naar continuous delivery

Software Development Done Right

XTA @PGGM

TESTEN IN DE TRANSITIE NAAR CONTINUOUS DELIVERY

1

IntroductieErik ZeedijkAgile Test Consultant XTAJuni 2015 PGGMAgile Test CoachTest Automatisering

2

Uitgangssituatie

3

Unit

FT

AT

Unit

FT

Unit

FT

Sprint 1 Sprint 2 Sprint 3 Bugfix

FT

Unit

Regressie Regressie

RT

Development TeamBusinessDev & Business

Release

AT

Doelstelling

4

Unit Unit Unit

FT, AT, RT

Sprint 1 Sprint 2 Sprint 3

FT, AT, RTFT, AT, RT

Unit

FT, AT, RT

Sprint …

Development TeamBusinessDev & Business

Release

Waar zit de pijn?

5

• Regressietestenligtbuitendeverantwoordelijkheidvandeontwikkelteams• Testenvindenhoofdzakelijkplaatsopdeketen(viadeUI)• MoeizameafstemmingtussenbusinessenIT• Integratielaatindeketen• Minimaletestautomatisering

TestenBuiten het team

False sense of security Frustratie achteraf

Continuous Testing

6

Binnen Continuous Delivery bestaat er geen aparte ”Regressie Test” faseIedere deployment voeren we automatisch een regressietest uitWe zijn dus eigenlijk continu aan het testen

E2EProces

Integratietest

Componenttest

Unittest

Exploratory Test

Agile Test AanpakLeveren van:

Snelle feedbackHoge wendbaarheidVerbeterde samenwerking Continu monitoren van kwaliteit

Creëren van:TransparantieVertrouwen

FocusgebiedenBusiness betrekken bij IT- Specification by Example- Sneller accepteren (Accepteren binnen de sprint)Vertrouwen business winnen- Inzicht geven in regressie- Risicogebaseerde uitvoer van testen- Snel oplossen problemenSnelle en flexibele test sets- Testen volgens het mentale model van de testpiramide- Automatisering waar mogelijk- Optimalisatie testomgevingen

8

Testen?Testen is Ontdekken en Leren- Moet worden uitgevoerd door een mens- Geeft nieuwe informatie en inzichten- Geeft nieuwe vragenChecken is bevestigen van de situatie- Moet worden geautomatiseerd- Verwacht geen verandering van uitkomst over meerdere testen

heen- Geeft inzicht in de staat van de software

9

Business betrekken ITSpecification by Example

SBE heeft als doel het gezamenlijk opstellen van duidelijke requirements in de vorm van specifieke scenario's met voorbeelden. Door een gezamenlijke ‘taal’ te hanteren wordt het eenvoudiger voor de scrum-teams en de business om samen te werken.

10

Waarom Specification by Example?Het lijkt allemaal heel makkelijk…Zorg voor een gezamenlijk begripVoorkom aannames en onduidelijkhedenWeet wanneer je klaar bentFocus op het wat, niet hoeTests gebruiken als specificaties

11

User Story Acceptance Criteria

Executable Specifications

Living Documentation

Samen specificerenGiven <precondition>When <actor> + <action>Then <observable result>

12

Hoe ziet dat er dan uit?

13

Epic: AdvertisementAs a marketing manager I want the system to offer free delivery on certain items So I can entice customers to order more

Given Customer is logged in @ bol.com

When Customer orders products with total price > EUR 20

Then Customer gets free shipping

Het (test-)landschap van PGGM

14

Automatiseren van Specifications

15

Feature Files

Features

Scenarios

Steps

MS Test

Unit Tests

CodedUI Tests

Step Definitions

Test Framework

Documentatie - Pickles

16

Living DocumentationAltijd up-to-date

Zijn we er nu?Applicatie-silo’s- Keten van applicaties is vaak nodig voor één business proces- Creëren van mocks en stubs op de juiste plekken- Refactoring (t.b.v. testability) binnen applicaties noodzakelijk- Integratie problemenAudit - Audit trails moeten worden aangeleverd aan o.a. DNB- Traceerbaarheid wanneer hoeveelheid testen toeneemt

17

Teams werken intensief en gebruikengespecialiseerde tools om alle facetten van een

applicatie te testen

XL TestView voor inzicht en control

SamenvattingLeveren in kleine opleveringen i.p.v. grote releasesContinu testen op meerdere niveaus Snelle feedback!Goede en vroege samenwerking business en ITAutomatiseren op juiste niveaus

21

THANKYOUFORLISTENINGANY

QUESTIONS?