ATDD Using Robot Framework
-
Upload
pekka-klaerck -
Category
Technology
-
view
7.964 -
download
0
description
Transcript of ATDD Using Robot Framework
![Page 1: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/1.jpg)
Acceptance Test Driven Development
using
Robot Framework
Pekka Klärck <[email protected]>Janne Härkönen <[email protected]>
© Copyright Nokia Siemens NetworksCreative Commons Attribution 3.0 License
![Page 2: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/2.jpg)
Acceptance Test Driven Development
● Common understanding● Ubiquitous language● Executable requirements/examples● Living documentation
● Also known as story test driven development, behavior driven development, executable requirements, specification by example, ...
![Page 3: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/3.jpg)
The ATDD cycle
© Image copyright Elisabeth Hendrickson
![Page 4: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/4.jpg)
Discuss phase
● Whole team is involved in discussing the problem and the solution
● Team members gain shared understanding and common vocabulary
● Concrete examples clarify the solution● The examples can later be automated
![Page 5: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/5.jpg)
Development phase
● The specified examples guide the implementation work
● Automation of the examples can be done in parallel with feature implementation
● The whole team is responsible on automation● In the end, all the automated examples pass
when run against the implementation
![Page 6: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/6.jpg)
Deliver phase
● Implemented features are demonstrated to all stakeholders
● Original examples are executed against the produced software
● Feedback serves as input to the next discussion phase
![Page 7: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/7.jpg)
Robot Framework
● Generic test automation framework● Utilizes the keyword-driven testing approach● Suitable both for "normal" automation and ATDD
● Implemented with Python● Runs also on Jython (JVM) and IronPython (.NET)
● Open source● Apache 2.0 License● Sponsored by Nokia Siemens Networks● Active development and community
![Page 8: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/8.jpg)
High level architecture
![Page 9: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/9.jpg)
Simple tabular syntax
![Page 10: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/10.jpg)
Executable specifications
![Page 11: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/11.jpg)
Data-driven test cases
![Page 12: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/12.jpg)
Key features
● Creating higher level keywords in test data● Easy to create domain specific languages● No programming skills needed
● Variables● Tagging test cases
● Selecting tests, statistics, ...
● Simple test library API● Easy to create custom libraries
![Page 13: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/13.jpg)
Separate test data editor (RIDE)
![Page 14: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/14.jpg)
Clear reports
![Page 15: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/15.jpg)
Detailed logs
![Page 16: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/16.jpg)
Rich ecosystem
● Generic test libraries● Web testing, Swing, SWT, Windows GUIs,
databases, SSH, Telnet, ...
● Build tool integration● Outputs also in machine readable XML format● Plugins for Jenkins/Hudson, Maven, Ant, ...
● Text editor support● Emacs, Vim, TextMate, ...
![Page 17: ATDD Using Robot Framework](https://reader034.fdocuments.us/reader034/viewer/2022042507/554a10cdb4c905825d8b4a8f/html5/thumbnails/17.jpg)
For more information
● Bridging the Communication Gap book by Gojko Adzic: http://acceptancetesting.info
● Robot Framework: http://robotframework.org
● ATDD with Robot Framework article by Craig Larman and Bas Vodde: http://a-tdd.org
● ATDD with Robot Framework demo: http://code.google.com/p/atdd-with-robot-framework
● Web testing demo with Robot Framework: http://bit.ly/rf-web-test-demo