SlideShare a Scribd company logo
1 of 61
Download to read offline
TestNet najaarsevent
Jori Ramakers & Marielle Winarto
Agile testautomatisering
in de praktijk
Wat gaan we doen
Aan de slag met agile testautomatisering
• Waarom belangrijk?
• Hoe past testautomatisering binnen scrum?
• Van user story tot werkende software
• Tools
• Valkuilen en veelgemaakte fouten
Testautomatisering
sneller, vaker en beter testenS
door inzet van tools
Uitgangspunten
Scrumbord
• Teams van 6
• Laptops
• Internet: wifi NBC
• Website: training.testtoolfactory.com
Praktische zaken
De case
De mensen
Jori
Technical lead
Marielle
Product Owner
Annelène
Eindgebruiker
• Online database met gegevens over mobiele
telefoons, zodat de klant makkelijker kan
kiezen
• (en tot aankoop overgaat)
Productvisie
alleen
bellen
breed
productaanbod
onpartijdig
levert zelf
phonehouse.nl
Tweakers.net
coolblue
wehkamp
belsimpel
Beslist.nl
• Project gaat binnenkort van start
• Scrum, korte sprints van 2 weken
• Weinig budget, zsm werkend prototype
• Testen? Testautomatisering?
Situatieschets
Redenen om te automatiseren
1. Eerder en sneller fouten vinden
2. Minder testers nodig
3. Hogere kwaliteit
4. Technische wijzigingen minder riskant
• Wat wil je testen?
• Welke methoden heb je beschikbaar?
Overall teststrategie
• Kennismaken
– Wie ben je?
– Wat heb je al gedaan met agile TA?
– Wat wil je vandaag bereiken?
Opdracht 1a
Opdracht 1b
• Waar liggen de risico’s?
• Wat testen?
• Wat automatiseren?
• Welke randvoorwaarden?
(techniek, mensen, proces)
Testpiramide
• Dicht op de code
• Voor en door developers
• Pros: snel, makkelijk debuggen
• Cons: gebrek aan context
Unittesten
• Vanuit technisch perspectief
• Delen afzonderlijk en samen
• Pros: test integraties
• Cons: afhankelijkheden
Componenten, integraties
• Technische implementatie als
black box
• Gericht op functionaliteit
• Doet de applicatie het?
Functionele acceptatie
• Door eindgebruikers
(of vanuit hun perspectief)
• Heb je er ook wat aan?
Gebruikersacceptatie
Unittesten - tools
• Junit
• TestNG
• Jasmine (+Karma)
• Visual Studio Unit Test Framework
• Etc.
Demo
• Unit testen met TestNG
• Behavior Driven Development
• Jbehave
• Cucumber
• Specflow
• Etc.
Given – When - Then
Syntax - features
Syntax - features
Code
Given I have an order
Given there is an order
Given there is an order called “incidental detail”
Given the order “incident detail” exists
Given an order exists
DRY
Imperative
Declarative
• Voorbeelden maken een story concreet
• Alle teamleden op één lijn
• OOK zinvol als er niet geautomatiseerd wordt
Voordelen
a) Bel1voudig.nl begint vorm te krijgen, bekijk
het verloop
b) Specificeer testgevallen voor de zoekfunctie
Opdracht 2
Done
• Teststrategie bepalen
– Incl. automatiseringsdoelen
• Testpiramide
• Testautomatisering dicht bij de code
ToDo
(na de pauze)
• Testautomatisering bovenin de piramide
• Andere tools
Maar nu eerst: valkuilen en risico’s
Mini-waterval
Definition of Done
Tijd tekort
Falende tests
Stellingen
1. Agile projecten kunnen niet zonder
testautomatisering.
2. Iedere tester moet kunnen programmeren.
3. Als je genoeg automatiseert, is handmatig testen
niet meer nodig.
4. Automatiseren in een vroeg stadium is niet zinvol,
alles verandert toch nog.
ToDo
• Testautomatisering bovenin de piramide
• Andere tools
• (nog aanvullen, of weglaten)
Functionele acceptatie
• Natuurgetrouw
• Black-box
• Testen van functionaliteit
Automatiseren webapplicatie
Tools
Een selectie
• Hotelapplicatie
Nieuwe casus
Opdracht 3
1. Draai het script
2. Pas het script aan
3. Maak een nieuw testgeval voor de volgende
story: <story>
4. Draai het script opnieuw
• Alles willen testen
• Onleesbare testgevallen
• Fragiele locators: xpath
• Timing
• Afhankelijkheden testdata en infrastructuur
Valkuilen functioneel testen
Tips functioneel testen
werk
doelgericht
structureel
onderhoud
gooi ook
wat weg
story testgevallen keuzes
Focus
Andere tools
• Scrum tools
• Test management tools
• Testdata
• Service virtualisatie
• Versiebeheer
• Etc
Opdracht 4a
• Onderhoudbaarheid
– Herbruikbare blokken
– Testdata
Opdracht 4b
• Voorbereiding retro
– Wat ging er goed?
– Wat kon er beter?
– Wat heb je geleerd?
– Welke vragen staan nog open?
Agile plaatje
Daily
24 hours
Sprint
2-4 weeks
Wanneer draai je wat
• Elke save
• Elke build
• Elke deployment
• Elke dag
• Elke sprint
• Gerichte werk
Review
Retro
TestNet - Agile testautomatisering in de praktijk

More Related Content

Similar to TestNet - Agile testautomatisering in de praktijk

Continuïteit in uw onderneming door connected producten - Big Data Expo 2019
Continuïteit in uw onderneming door connected producten - Big Data Expo 2019Continuïteit in uw onderneming door connected producten - Big Data Expo 2019
Continuïteit in uw onderneming door connected producten - Big Data Expo 2019webwinkelvakdag
 
Robot framework en ci v2
Robot framework en ci v2Robot framework en ci v2
Robot framework en ci v2christiantester
 
Load En Stress Testers Te Slim Af Final
Load En Stress Testers Te Slim Af FinalLoad En Stress Testers Te Slim Af Final
Load En Stress Testers Te Slim Af FinalPlutonIT
 
Hands-off performance testing - Twan Koot & Addy Zwiebel
Hands-off performance testing - Twan Koot & Addy ZwiebelHands-off performance testing - Twan Koot & Addy Zwiebel
Hands-off performance testing - Twan Koot & Addy ZwiebelSogeti Nederland B.V.
 
Workshop BI/DWH AGILE TESTING SNS Bank Dutch
Workshop BI/DWH AGILE TESTING SNS Bank DutchWorkshop BI/DWH AGILE TESTING SNS Bank Dutch
Workshop BI/DWH AGILE TESTING SNS Bank DutchMarcus Drost
 
2016 11-15 - nvrb - software betrouwbaarheid
2016 11-15 - nvrb - software betrouwbaarheid2016 11-15 - nvrb - software betrouwbaarheid
2016 11-15 - nvrb - software betrouwbaarheidJaap van Ekris
 
Good practices in pentesting - Bas de Heer
Good practices in pentesting - Bas de HeerGood practices in pentesting - Bas de Heer
Good practices in pentesting - Bas de HeerSogeti Nederland B.V.
 
Agile software ontwikkeling met continuous delivery
Agile software ontwikkeling met continuous deliveryAgile software ontwikkeling met continuous delivery
Agile software ontwikkeling met continuous deliveryWillem Meints
 
Testen in de transitie naar continuous delivery
Testen in de transitie naar continuous deliveryTesten in de transitie naar continuous delivery
Testen in de transitie naar continuous deliveryXebia Nederland BV
 
Workshop BI/DWH AGILE TESTING Zwitserleven Dutch
Workshop BI/DWH AGILE TESTING Zwitserleven DutchWorkshop BI/DWH AGILE TESTING Zwitserleven Dutch
Workshop BI/DWH AGILE TESTING Zwitserleven DutchMarcus Drost
 
Experience Story: Implementing Test automation in your organization
Experience Story: Implementing Test automation in your organizationExperience Story: Implementing Test automation in your organization
Experience Story: Implementing Test automation in your organizationDerk-Jan de Grood
 
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en Scrum
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en ScrumSYSQA Kennissessie oktober 2011, presentatie 1 Testen en Scrum
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en ScrumSYSQA BV
 
ING : How top quality software and state-of-the-art technology leads to conti...
ING : How top quality software and state-of-the-art technology leads to conti...ING : How top quality software and state-of-the-art technology leads to conti...
ING : How top quality software and state-of-the-art technology leads to conti...NLJUG
 
Meetup at SIG: Meten is weten
Meetup at SIG: Meten is wetenMeetup at SIG: Meten is weten
Meetup at SIG: Meten is wetenDevnology
 
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020Stork
 
Mendix Essentials Combiwel
Mendix Essentials CombiwelMendix Essentials Combiwel
Mendix Essentials CombiwelMendix
 
Sogeti seminar Supplier Performance Measurement
Sogeti seminar Supplier Performance MeasurementSogeti seminar Supplier Performance Measurement
Sogeti seminar Supplier Performance MeasurementHarold van Heeringen
 
Romex intro test no animation
Romex intro test no animationRomex intro test no animation
Romex intro test no animationPeter van Oostrom
 
Workshop scrum voor product owners
Workshop scrum voor product ownersWorkshop scrum voor product owners
Workshop scrum voor product ownersANGI studio
 

Similar to TestNet - Agile testautomatisering in de praktijk (20)

Continuïteit in uw onderneming door connected producten - Big Data Expo 2019
Continuïteit in uw onderneming door connected producten - Big Data Expo 2019Continuïteit in uw onderneming door connected producten - Big Data Expo 2019
Continuïteit in uw onderneming door connected producten - Big Data Expo 2019
 
Robot framework en ci v2
Robot framework en ci v2Robot framework en ci v2
Robot framework en ci v2
 
Load En Stress Testers Te Slim Af Final
Load En Stress Testers Te Slim Af FinalLoad En Stress Testers Te Slim Af Final
Load En Stress Testers Te Slim Af Final
 
Hands-off performance testing - Twan Koot & Addy Zwiebel
Hands-off performance testing - Twan Koot & Addy ZwiebelHands-off performance testing - Twan Koot & Addy Zwiebel
Hands-off performance testing - Twan Koot & Addy Zwiebel
 
Workshop BI/DWH AGILE TESTING SNS Bank Dutch
Workshop BI/DWH AGILE TESTING SNS Bank DutchWorkshop BI/DWH AGILE TESTING SNS Bank Dutch
Workshop BI/DWH AGILE TESTING SNS Bank Dutch
 
2016 11-15 - nvrb - software betrouwbaarheid
2016 11-15 - nvrb - software betrouwbaarheid2016 11-15 - nvrb - software betrouwbaarheid
2016 11-15 - nvrb - software betrouwbaarheid
 
Good practices in pentesting - Bas de Heer
Good practices in pentesting - Bas de HeerGood practices in pentesting - Bas de Heer
Good practices in pentesting - Bas de Heer
 
Agile software ontwikkeling met continuous delivery
Agile software ontwikkeling met continuous deliveryAgile software ontwikkeling met continuous delivery
Agile software ontwikkeling met continuous delivery
 
Testen in de transitie naar continuous delivery
Testen in de transitie naar continuous deliveryTesten in de transitie naar continuous delivery
Testen in de transitie naar continuous delivery
 
Agile - De Rol Van Tester
Agile - De Rol Van TesterAgile - De Rol Van Tester
Agile - De Rol Van Tester
 
Workshop BI/DWH AGILE TESTING Zwitserleven Dutch
Workshop BI/DWH AGILE TESTING Zwitserleven DutchWorkshop BI/DWH AGILE TESTING Zwitserleven Dutch
Workshop BI/DWH AGILE TESTING Zwitserleven Dutch
 
Experience Story: Implementing Test automation in your organization
Experience Story: Implementing Test automation in your organizationExperience Story: Implementing Test automation in your organization
Experience Story: Implementing Test automation in your organization
 
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en Scrum
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en ScrumSYSQA Kennissessie oktober 2011, presentatie 1 Testen en Scrum
SYSQA Kennissessie oktober 2011, presentatie 1 Testen en Scrum
 
ING : How top quality software and state-of-the-art technology leads to conti...
ING : How top quality software and state-of-the-art technology leads to conti...ING : How top quality software and state-of-the-art technology leads to conti...
ING : How top quality software and state-of-the-art technology leads to conti...
 
Meetup at SIG: Meten is weten
Meetup at SIG: Meten is wetenMeetup at SIG: Meten is weten
Meetup at SIG: Meten is weten
 
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020
Webinar - EAM /Reliability & Integrity Software selectie - 15 juli 2020
 
Mendix Essentials Combiwel
Mendix Essentials CombiwelMendix Essentials Combiwel
Mendix Essentials Combiwel
 
Sogeti seminar Supplier Performance Measurement
Sogeti seminar Supplier Performance MeasurementSogeti seminar Supplier Performance Measurement
Sogeti seminar Supplier Performance Measurement
 
Romex intro test no animation
Romex intro test no animationRomex intro test no animation
Romex intro test no animation
 
Workshop scrum voor product owners
Workshop scrum voor product ownersWorkshop scrum voor product owners
Workshop scrum voor product owners
 

TestNet - Agile testautomatisering in de praktijk

Editor's Notes

  1. (plaatjes)  Waarom is testautomatisering in agile projecten zo belangrijk? Hoe herken je dat testautomatisering noodzakelijk is en hoe krijg je de doelstellingen scherp. - Hoe moet het niet? Valkuilen en veelgemaakte fouten, met onder andere aandacht voor onderhoudbaarheid, afhankelijkheid van kennishouders en technische complexiteit. - Hoe past testautomatisering binnen het scrumproces? Wat test je in een dagelijkse (nachtelijke) set, wat voor eisen stel je aan een smoketest, etc. - Van user story tot werkende software – praktijkopdracht automatiseren van een story. - Welke tools zijn er allemaal beschikbaar? In agile projecten zijn meerdere soorten tools in gebruik, niet alleen voor testuitvoering. Hoe kun je deze optimaal inzetten en op elkaar laten aansluiten? Neem je laptop mee!
  2. Dit ziet er zo uit: <demo>. Een test die geautomatiseerd is kun je starten met 1 druk op de knop. Daarna doet de computer het werk. Als de test klaar is, kun je de resultaten analyseren en bepalen wat er mee moet gebeuren, bijv een bevinding aanmaken. <demo> Specificatie van de testgevallen is makkelijk, ook voor niet-techneuten <demo specificatie>. Voorbeeld van een wijziging. Dus leesbare testscripts die ook voor de business inzichtelijk zijn. En hierdoor hoeft er bij het handmatige testen alleen nog de usability en look & feel beoordeeld te worden. 
  3. (aanvullen)
  4. (als het lukt om de trainingswebsite op tijd online te krijgen)
  5. http://itsa deliverything.com/three-amigos-meeting-agree-the-tests-before-development-starts
  6. Don’t Repeat Yourself Given I have an order Given I have an order with a “[Header]” of “[Value]” Given I have an order with the following values: Given I have a new order with the following values:
  7. Foto’s: Canada 2014 ;) Plaatjes staan nog scheef
  8. (ander plaatje?)
  9. Of prioriteit?
  10. Zie bijvoorbeeld http://testhuddle.com/resource/stop-the-rot-banishing-flakiness-from-selenium-tests-with-simon-stewart/
  11. Misschien teveel detail, misschien vervangen door voorbeeld
  12. (adhv briefjes op done)