Post on 18-Jun-2015
description
Acceptance Test Driven Development
using
Robot Framework
Pekka Klärck <peke@eliga.fi>Janne Härkönen <jth@reaktor.fi>
© Copyright Nokia Siemens NetworksCreative Commons Attribution 3.0 License
Acceptance Test Driven Development
Common understanding Ubiquitous language Executable requirements/examples Living documentation Also known as story test driven development,
behavior driven development, executable specifications, specification by example, ...
The ATDD cycle
© Image copyright Elisabeth Hendrickson
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
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
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
High level architecture
Simple tabular syntax
Executable specifications
Data-driven test cases
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
Separate test data editor (RIDE)
Clear reports
Detailed logs
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, ...
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
Questions?Thanks!
Pekka Klärck <peke@eliga.fi>Janne Härkönen <jth@reaktor.fi>