SlideShare a Scribd company logo
Robot Framework
en CI/CD
Christian Bos & Guido Demmenie | RF meetup 05-10-2020
Deel 1: definitie en context
Het eeuwige dilemma…
Software in productie…
DevOps
Hoe dan?
Continuous Integration/Deployment
Continuous Integration (CI)
Waarom CI?
• Code regelmatig integreren met codebase
• voorkomen (grote) merge problemen
• bugs snel detecteren (regressie)
• Snelle feedback loop
• keep the build fast
• minimaal 1x per dag per developer
• elke commit wordt gebuild (self-testing)
• Laatste stabiele versie
Samenvatting
Deel 2: TA en CI/CD
Wat betekent CI/CD voor testen?
• Continuous testing
• vaak dezelfde testcases uitvoeren (regressietesten)
• testen tijdens alle ‘faseovergangen’
• dezelfde testen in meerdere omgevingen (testdata)
• Wees kritisch: moet ik elke testcase runnen?
• zorg voor een goede test(automation)strategie!
• pesticide paradox
Wat betekent CI/CD voor testen?
• Gescheduled draaien van testen
• nightly build
• wijzigingen in code base (regressie)
• wijzigingen buiten eigen code
• Welke testcase run ik als eerste?
• grootste faalkans
• snelste testcase
Test(automatiserings)strategie
• Welke test worden (niet) geautomatiseerd?
• testdekking (coverage) – testontwerptechnieken!
• business- en technische risico’s (PRA)
• frequentie van uitvoeren
• Op welk niveau wordt iets getest?
• niet alles op GUI niveau!
• test automation pyramid
Test(automatiserings)strategie
• Wie is verantwoordelijk?
• Teamverantwoordelijkheid!
• afstemming met stakeholders
• hoe ziet rapportage eruit?
• Niet alles kan geautomatiseerd worden
• 100% TA moet nooit het doel zijn!
• exploratory testing
• Testcases schrijven voor defects/incidents?
Agile testing
Stappenplan voor CI…
1. Testautomatisering stabiel
• begin met een kleine set
• scripts leesbaar en onderhoudbaar (clean code)
• logging leesbaar en bij fouten behulpzaam
• kies juiste tool voor TA ☺
2. Versiebeheer
• TA scripts in een versiebeheer tool (git)
• branching strategie
• TA code bij SUT code? of apart?
Stappenplan voor CI…
3. Scheduling
• draai tests gescheduled (nightly build)
• bekijk ook dagelijks de resultaten!
• begin ook hier met een kleine set
4. Vergroot de test coverage
• voeg waardevolle (business value) testcases en controles toe
• splitsen jobs in CI tool
• meerdere omgevingen
• monitoring
Stappenplan voor CI…
5. Triggers
• laat git commits automatisch builden
• gebruik nieuwe build als trigger voor TA
6. Onderhoud
• bekijk periodiek (elke sprint) welke testcases nog werken
• wees ook kritisch: welke testcases kunnen weg?
• parallel draaien van testcases?
Tools voor CI
Tools voor CI
Deel 3: Demo Jenkins

More Related Content

Similar to Robot framework en ci v2 (20)

PPT
Agile, Continuous Delivery & DevOps in perspectief
Maurice Roos
 
PPTX
Agile software ontwikkeling met continuous delivery
Willem Meints
 
PDF
Hoe releasen minder pijnlijk werd bij de ANWB Alarmcentrale
Sjoerd Hemminga
 
PPT
2008-06-23 - SDN - Kwaliteit van software, wat is dat nu eigenlijk?
Jaap van Ekris
 
PDF
Hoe releasen minder pijnlijk werd bij de ANWB Alarmcentrale
Jeroen Reijn
 
PPTX
Nearshore softwareontwikkeling - Technosoft
Bart Zwager
 
PPT
Sdb Presentatie
menfey
 
PPT
Workshop BI/DWH AGILE TESTING Zwitserleven Dutch
Marcus Drost
 
PDF
Testen in de transitie naar continuous delivery
Xebia Nederland BV
 
PPT
Valhelm Verplicht (1.8)
Niemeijer
 
PPTX
Continuous delivery met jenkins twist en puppet
ltebbens
 
PDF
Fronteers Modern Testing
Maarten Groeneweg
 
PDF
Service Orientatie
guest7decb
 
PDF
BPUG Seminar 2014 Rik Marselis - effectief testen in agile
Rik Marselis
 
PPTX
Testen binnen dev ops DTC 2014
Kaspar van Dam
 
PDF
Hands-off performance testing - Twan Koot & Addy Zwiebel
Sogeti Nederland B.V.
 
PPT
Test Driven Development
roelofr
 
PDF
Starten met geautomatiseerd testen - SDN 2013
Delta-N
 
PDF
Rf meetup 20210412 robo_con
christiantester
 
PPT
2006-04-19 - Platform voor Informatiebeveiliging - Kwaliteit van Software in ...
Jaap van Ekris
 
Agile, Continuous Delivery & DevOps in perspectief
Maurice Roos
 
Agile software ontwikkeling met continuous delivery
Willem Meints
 
Hoe releasen minder pijnlijk werd bij de ANWB Alarmcentrale
Sjoerd Hemminga
 
2008-06-23 - SDN - Kwaliteit van software, wat is dat nu eigenlijk?
Jaap van Ekris
 
Hoe releasen minder pijnlijk werd bij de ANWB Alarmcentrale
Jeroen Reijn
 
Nearshore softwareontwikkeling - Technosoft
Bart Zwager
 
Sdb Presentatie
menfey
 
Workshop BI/DWH AGILE TESTING Zwitserleven Dutch
Marcus Drost
 
Testen in de transitie naar continuous delivery
Xebia Nederland BV
 
Valhelm Verplicht (1.8)
Niemeijer
 
Continuous delivery met jenkins twist en puppet
ltebbens
 
Fronteers Modern Testing
Maarten Groeneweg
 
Service Orientatie
guest7decb
 
BPUG Seminar 2014 Rik Marselis - effectief testen in agile
Rik Marselis
 
Testen binnen dev ops DTC 2014
Kaspar van Dam
 
Hands-off performance testing - Twan Koot & Addy Zwiebel
Sogeti Nederland B.V.
 
Test Driven Development
roelofr
 
Starten met geautomatiseerd testen - SDN 2013
Delta-N
 
Rf meetup 20210412 robo_con
christiantester
 
2006-04-19 - Platform voor Informatiebeveiliging - Kwaliteit van Software in ...
Jaap van Ekris
 

More from christiantester (8)

PDF
Meetup DB testing met SoapUI en Robot Framework.pdf
christiantester
 
PDF
Robot framework en Browser Library
christiantester
 
PDF
Robo con 2021
christiantester
 
PDF
Cypress meetup v2
christiantester
 
PDF
Rf meetup 25feb2020 robo_con
christiantester
 
PDF
Rest api testing
christiantester
 
PPTX
Introductie robot framework
christiantester
 
PDF
Robocon @ Immune-it
christiantester
 
Meetup DB testing met SoapUI en Robot Framework.pdf
christiantester
 
Robot framework en Browser Library
christiantester
 
Robo con 2021
christiantester
 
Cypress meetup v2
christiantester
 
Rf meetup 25feb2020 robo_con
christiantester
 
Rest api testing
christiantester
 
Introductie robot framework
christiantester
 
Robocon @ Immune-it
christiantester
 
Ad

Robot framework en ci v2

  • 1. Robot Framework en CI/CD Christian Bos & Guido Demmenie | RF meetup 05-10-2020
  • 2. Deel 1: definitie en context
  • 9. Waarom CI? • Code regelmatig integreren met codebase • voorkomen (grote) merge problemen • bugs snel detecteren (regressie) • Snelle feedback loop • keep the build fast • minimaal 1x per dag per developer • elke commit wordt gebuild (self-testing) • Laatste stabiele versie
  • 11. Deel 2: TA en CI/CD
  • 12. Wat betekent CI/CD voor testen? • Continuous testing • vaak dezelfde testcases uitvoeren (regressietesten) • testen tijdens alle ‘faseovergangen’ • dezelfde testen in meerdere omgevingen (testdata) • Wees kritisch: moet ik elke testcase runnen? • zorg voor een goede test(automation)strategie! • pesticide paradox
  • 13. Wat betekent CI/CD voor testen? • Gescheduled draaien van testen • nightly build • wijzigingen in code base (regressie) • wijzigingen buiten eigen code • Welke testcase run ik als eerste? • grootste faalkans • snelste testcase
  • 14. Test(automatiserings)strategie • Welke test worden (niet) geautomatiseerd? • testdekking (coverage) – testontwerptechnieken! • business- en technische risico’s (PRA) • frequentie van uitvoeren • Op welk niveau wordt iets getest? • niet alles op GUI niveau! • test automation pyramid
  • 15. Test(automatiserings)strategie • Wie is verantwoordelijk? • Teamverantwoordelijkheid! • afstemming met stakeholders • hoe ziet rapportage eruit? • Niet alles kan geautomatiseerd worden • 100% TA moet nooit het doel zijn! • exploratory testing • Testcases schrijven voor defects/incidents?
  • 17. Stappenplan voor CI… 1. Testautomatisering stabiel • begin met een kleine set • scripts leesbaar en onderhoudbaar (clean code) • logging leesbaar en bij fouten behulpzaam • kies juiste tool voor TA ☺ 2. Versiebeheer • TA scripts in een versiebeheer tool (git) • branching strategie • TA code bij SUT code? of apart?
  • 18. Stappenplan voor CI… 3. Scheduling • draai tests gescheduled (nightly build) • bekijk ook dagelijks de resultaten! • begin ook hier met een kleine set 4. Vergroot de test coverage • voeg waardevolle (business value) testcases en controles toe • splitsen jobs in CI tool • meerdere omgevingen • monitoring
  • 19. Stappenplan voor CI… 5. Triggers • laat git commits automatisch builden • gebruik nieuwe build als trigger voor TA 6. Onderhoud • bekijk periodiek (elke sprint) welke testcases nog werken • wees ook kritisch: welke testcases kunnen weg? • parallel draaien van testcases?
  • 22. Deel 3: Demo Jenkins