SlideShare a Scribd company logo
Robot Framework
Introductie
Even voorstellen...
• Christian Bos
• Test automation developer
• 3,5 jaar bij Immune-it
• > 10 jaar bij Sogeti
• Java && Python developer
• (Agile) coach && test consultant
• Trainer
Robot Framework…
• Generiek framework voor automatisering
• Test automation (TA)
• Robotic process automation (RPA)
• …
• Open source
• niet alleen RF maar ook libraries
• IDE plugins
• Te integreren met CI/CD tooling (bijv. Jenkins) en platforms als
BrowserStack en Saucelabs.
3
Community
• Extreem goede documentatie (User Guide)
• Jaarlijks evenement in Helsinki
• RoboCon
• Veel activiteit op github
• RF
• libraries
4
Vergelijking met andere tools
Robot Framework
• meerdere technieken
• onafhankelijk van taal
• weinig tot geen programmeer-
kennis nodig
Andere open source tools
• één specifieke techniek
• één specifieke taal
• programmeerkennis nodig
5
Robot Framework
• Robot Framework roept het systeem
extern aan en is daarom vooral
geschikt voor end-to-end testing
• Minder geschikt voor unit testing
6
Generieke TA framework
• Test Definition
• opstellen testcases
• assertions
• Test Execution
• runnen van testcases
• rapportage en log-files
• Test Adaptation
• libraries voor diverse interfaces
7
Opzet TA script
• Data-driven script
• veel testcases (gevoed vanuit data file)
• relatief slecht leesbare rapportage (for-loops) -> niet met RF
• positief vs negatief testen
• Keyword-driven script
• specifieke keywords voor teststappen en assertions
• complexiteit weg-geabstraheerd in keywords
• Process-driven script
• high-level keywords
• naamgeving keywords scenario-gebaseerd
• complexiteit weg-geabstraheerd in keywords
Rapportage en logfile
• Robot Framework genereert standaard een goed leesbare logfile en
rapport
9
Libraries
• SeleniumLibrary (web)
• AutoIT library (windows app)
• Appium (mobile)
• Database
• Webservices (REST/SOAP)
• SapGUILibrary (SAP)
• …
10
Praktijkvoorbeeld
11
Zelf libraries maken
• Robot Framework is uitbreidbaar
• Libraries worden geschreven in Python
• Keyword = functie
12
IDE’s voor RF
• MS VSCode
• language server protocol (LSP)
• Pycharm
• Intellibot plugin
• ook ondersteuning voor Python
• LSP (alleen alpha versie)
• Robocorp Lab (Jupyter
notebook)
• Eclipse
• RED plugin
• RIDE
• RF test data editor
13
Immune-IT Cursusaanbod
• 3-tal cursussen rondom core functionaliteit RF
• foundation – advanced – expert cursus
• maken gebruik van SeleniumLibrary
• Database en REST API testing cursus
• database library
• RESTInstance library
• Python cursus
• zelf libraries schrijven en gebruiken
Meetups
15

More Related Content

Similar to Introductie robot framework

Meetup DB testing met SoapUI en Robot Framework.pdf
Meetup DB testing met SoapUI en Robot Framework.pdfMeetup DB testing met SoapUI en Robot Framework.pdf
Meetup DB testing met SoapUI en Robot Framework.pdf
christiantester
 
Nord Toelichting Techniek
Nord Toelichting TechniekNord Toelichting Techniek
Nord Toelichting Techniektjercus
 
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en FluidTYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
TYPO3 Nederland
 
About Node.js
About Node.jsAbout Node.js
About Node.js
Hanzehogeschool
 
201505 Gear - Projectaanpak servermigratie
201505 Gear - Projectaanpak servermigratie201505 Gear - Projectaanpak servermigratie
201505 Gear - Projectaanpak servermigratie
geareontop
 
Versiebeheer van database changes
Versiebeheer van database changesVersiebeheer van database changes
Versiebeheer van database changes
Arjen van Vliet
 
Sitecore - Onder de motorkop van ParTechIT.nl
Sitecore - Onder de motorkop van ParTechIT.nlSitecore - Onder de motorkop van ParTechIT.nl
Sitecore - Onder de motorkop van ParTechIT.nl
Ruud van Falier
 
PFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsPFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsRichard Tuin
 
Web applicatie van scratch
Web applicatie van scratchWeb applicatie van scratch
Web applicatie van scratch
Hanzehogeschool
 
Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot Python
Vincent Claes
 
Robot framework en ci v2
Robot framework en ci v2Robot framework en ci v2
Robot framework en ci v2
christiantester
 
2019 diy migration webinar gs nl
2019 diy migration webinar gs nl2019 diy migration webinar gs nl
2019 diy migration webinar gs nl
EDB
 
Basis Javascript
Basis JavascriptBasis Javascript
Basis Javascript
Maarten Pijnenborg
 
QNH pizza sessie
QNH pizza sessieQNH pizza sessie
QNH pizza sessie
Matthijs Breemans
 
Amis Puppet WebLogic / FMW & Database Building blocks
Amis Puppet WebLogic / FMW & Database Building blocks Amis Puppet WebLogic / FMW & Database Building blocks
Amis Puppet WebLogic / FMW & Database Building blocks
Getting value from IoT, Integration and Data Analytics
 
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
Jaap Kuilman
 
Profiel thymos rudi respen
Profiel thymos   rudi respenProfiel thymos   rudi respen
Profiel thymos rudi respen
Rudi Respen
 
The power of joomla!
The power of joomla!The power of joomla!
The power of joomla!
Rick Spaan
 

Similar to Introductie robot framework (20)

Meetup DB testing met SoapUI en Robot Framework.pdf
Meetup DB testing met SoapUI en Robot Framework.pdfMeetup DB testing met SoapUI en Robot Framework.pdf
Meetup DB testing met SoapUI en Robot Framework.pdf
 
Nord Toelichting Techniek
Nord Toelichting TechniekNord Toelichting Techniek
Nord Toelichting Techniek
 
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en FluidTYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
TYPO3 Congres 2012 - Aan de slag met TYPO3 Extbase en Fluid
 
About Node.js
About Node.jsAbout Node.js
About Node.js
 
201505 Gear - Projectaanpak servermigratie
201505 Gear - Projectaanpak servermigratie201505 Gear - Projectaanpak servermigratie
201505 Gear - Projectaanpak servermigratie
 
Versiebeheer van database changes
Versiebeheer van database changesVersiebeheer van database changes
Versiebeheer van database changes
 
Sitecore - Onder de motorkop van ParTechIT.nl
Sitecore - Onder de motorkop van ParTechIT.nlSitecore - Onder de motorkop van ParTechIT.nl
Sitecore - Onder de motorkop van ParTechIT.nl
 
PFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele testsPFZ Workshop - Automatiseren van functionele tests
PFZ Workshop - Automatiseren van functionele tests
 
Web applicatie van scratch
Web applicatie van scratchWeb applicatie van scratch
Web applicatie van scratch
 
Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot Python
 
Robot framework en ci v2
Robot framework en ci v2Robot framework en ci v2
Robot framework en ci v2
 
2019 diy migration webinar gs nl
2019 diy migration webinar gs nl2019 diy migration webinar gs nl
2019 diy migration webinar gs nl
 
Basis Javascript
Basis JavascriptBasis Javascript
Basis Javascript
 
QNH pizza sessie
QNH pizza sessieQNH pizza sessie
QNH pizza sessie
 
Adlib webservices
Adlib webservicesAdlib webservices
Adlib webservices
 
Amis Puppet WebLogic / FMW & Database Building blocks
Amis Puppet WebLogic / FMW & Database Building blocks Amis Puppet WebLogic / FMW & Database Building blocks
Amis Puppet WebLogic / FMW & Database Building blocks
 
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
Testen van 1,3 miljoen regels mission critical code omzetten naar C++, hoe te...
 
Modern web development
Modern web developmentModern web development
Modern web development
 
Profiel thymos rudi respen
Profiel thymos   rudi respenProfiel thymos   rudi respen
Profiel thymos rudi respen
 
The power of joomla!
The power of joomla!The power of joomla!
The power of joomla!
 

Introductie robot framework

  • 2. Even voorstellen... • Christian Bos • Test automation developer • 3,5 jaar bij Immune-it • > 10 jaar bij Sogeti • Java && Python developer • (Agile) coach && test consultant • Trainer
  • 3. Robot Framework… • Generiek framework voor automatisering • Test automation (TA) • Robotic process automation (RPA) • … • Open source • niet alleen RF maar ook libraries • IDE plugins • Te integreren met CI/CD tooling (bijv. Jenkins) en platforms als BrowserStack en Saucelabs. 3
  • 4. Community • Extreem goede documentatie (User Guide) • Jaarlijks evenement in Helsinki • RoboCon • Veel activiteit op github • RF • libraries 4
  • 5. Vergelijking met andere tools Robot Framework • meerdere technieken • onafhankelijk van taal • weinig tot geen programmeer- kennis nodig Andere open source tools • één specifieke techniek • één specifieke taal • programmeerkennis nodig 5
  • 6. Robot Framework • Robot Framework roept het systeem extern aan en is daarom vooral geschikt voor end-to-end testing • Minder geschikt voor unit testing 6
  • 7. Generieke TA framework • Test Definition • opstellen testcases • assertions • Test Execution • runnen van testcases • rapportage en log-files • Test Adaptation • libraries voor diverse interfaces 7
  • 8. Opzet TA script • Data-driven script • veel testcases (gevoed vanuit data file) • relatief slecht leesbare rapportage (for-loops) -> niet met RF • positief vs negatief testen • Keyword-driven script • specifieke keywords voor teststappen en assertions • complexiteit weg-geabstraheerd in keywords • Process-driven script • high-level keywords • naamgeving keywords scenario-gebaseerd • complexiteit weg-geabstraheerd in keywords
  • 9. Rapportage en logfile • Robot Framework genereert standaard een goed leesbare logfile en rapport 9
  • 10. Libraries • SeleniumLibrary (web) • AutoIT library (windows app) • Appium (mobile) • Database • Webservices (REST/SOAP) • SapGUILibrary (SAP) • … 10
  • 12. Zelf libraries maken • Robot Framework is uitbreidbaar • Libraries worden geschreven in Python • Keyword = functie 12
  • 13. IDE’s voor RF • MS VSCode • language server protocol (LSP) • Pycharm • Intellibot plugin • ook ondersteuning voor Python • LSP (alleen alpha versie) • Robocorp Lab (Jupyter notebook) • Eclipse • RED plugin • RIDE • RF test data editor 13
  • 14. Immune-IT Cursusaanbod • 3-tal cursussen rondom core functionaliteit RF • foundation – advanced – expert cursus • maken gebruik van SeleniumLibrary • Database en REST API testing cursus • database library • RESTInstance library • Python cursus • zelf libraries schrijven en gebruiken