Testen in de transitie naar continuous delivery
-
Upload
xebia-nederland-bv -
Category
Technology
-
view
263 -
download
0
Transcript of Testen in de transitie naar continuous delivery
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
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
Automatiseren van Specifications
15
Feature Files
Features
Scenarios
Steps
MS Test
Unit Tests
CodedUI Tests
Step Definitions
Test Framework
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
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