The Robot Framework is a generic test automation framework for acceptance test-driven development, that appears to be largely neglected.
Undeservedly so, as it facilitates powerful and yet simple test automation against a variety of interfaces.
It features some distinct advantages when compared to seemingly similar frameworks such as Cucumber or Fitnesse.
This workshop is meant to show you what makes the Robot Framework special and what is has to offer you.
4. Just a tiny bit about myself
Michael Hallik
Fifteen years of software testing
Almost four years of test automation
mhallik@xebia.com
4
Xebia Test Automation
5. RF in a (really, really small) nutshell
Generic test automation framework
ATDD/BDD: Given … When … Then …
5
Xebia Test Automation
6. Editor
Robot Framework
Domain code
Software under test
Xebia Test Automation
High-level design
Framework
Interface
Interface driver library
Logs & reports
REST APIWeb UI
Selenium WebdriverRF REST driver
8. Examples ecosystemXebia Test Automation
8
Protocol-level
Web Services
Db-level
GUI-level
Mobile
And dozens of
convenience libraries
…
… XML, String,
OperatingSystem,
Processes, DateTime,
File diff, Archives,
SSH, Telnet …
9. Editor plug-ins,
e.g.
Build plug-ins, e.g.
Examples ecosystem
And dozens of
convenience libraries
…
… XML, String,
OperatingSystem,
Processes, DateTime,
File diff, Archives,
SSH, Telnet …
Xebia Test Automation
10. Some advantages (cont.)
Very powerful and yet simple scripting language
- Empowering non-coders to swiftly contribute reusable and
maintainable test code
Xebia Test Automation
10
11. Some advantages (cont.)
Very active community, extending and maintaining
RF and ecosystem
Xebia Test Automation
11
13. Workshop
We will automate against the RF website
In 4 parts we will go:
- from first, monolithic test code
- to a fully refactored, data-driven and BDD-style test design
We will use the RF IDE as our editor
We will use Webdriver as our interface driver
Xebia Test Automation
13
14. Workshop
15:30 Part I: First test code
15:45 Part II: Refactoring
16:00 Part III: Creating a data-driven test design
16:15 Part IV: Creating a BDD-style test design
Xebia Test Automation
14
15. Part I
Use functions: Close all browsers, Click link, Page should contain, Open
browser and Maximize browser to …
… open http://robotframework.org in Chrome and …
Xebia Test Automation
15
16. Part I
Xebia Test Automation
16
Click link
Page should contain
Open browser
17. What do you think?
Advantages?
Drawbacks?
Risks?
Xebia Test Automation
17
18. Resources
http://robotframework.org/robotframework/2.9.1/RobotFrameworkUserGuide.html
Direct link to the RF user guide.
https://github.com/robotframework/QuickStartGuide/blob/master/QuickStart.rst
Direct link to the RF quick start guide.
https://github.com/robotframework/RIDE/wiki
Direct link to the RIDE wiki pages.
http://robotframework.org/robotframework/#user-guide
Links to various user guides for the RF and the standard test libraries.
http://robotframework.org/#test-libraries
Overview of all available test libs for the RF. From there, you can navigate to the projects pages of
specific libraries to view specific user guides for these libraries. E.g.
https://github.com/rtomac/robotframework-selenium2library/wiki
http://robotframework.org/#tools
Overview of all available tools for the RF. E.g. plug-ins for IDE's, build tools, etc.
http://robotframework.org/#documentation & http://robotframework.org/#support-contact
Links to documentation, blogs, support forums, mailing lists, etc.
https://groups.google.com/forum/#!forum/robotframework-users
Direct link to the RF user group.
Xebia Test Automation
18