Robot Framework
Robot Framework is a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It is a keyword-driven testing framework that uses tabular test data syntax.[1]
Developer(s) | Pekka Klärck, Janne Härkönen et al. |
---|---|
Initial release | 2.0 June 24, 2008 |
Stable release | 3.2.2
/ September 1, 2020 |
Repository | |
Written in | Python |
Operating system | Cross-platform |
Type | Software testing framework / test tool |
License | Apache License 2.0 |
Website | robotframework |
History
The basic ideas for Robot Framework were shaped in Pekka Klärck's masters thesis[2] in 2005. The first version was developed at Nokia Networks the same year. Version 2.0 was released as open source software June 24, 2008 and version 3.0.2 was released February 7, 2017.[3]
The framework is written using the Python programming language and has an active community of contributors. It is released under Apache License 2.0 and can be downloaded from robotframework.org.
Description
Test cases are written using a keyword-testing methodology written in a tabular format. These tables can be written in plain text, tab-separated values (TSV), or reStructuredText (reST) formats files[4] in any text editor or using the Robot Integrated Development Environment (RIDE).[5] RIDE simplifies writing test cases by providing framework-specific code completion, syntax highlighting, etc.
Examples
The following test case implements a Hello, World! example:
*** Test Cases ***
Demo
Log Hello world
Log
is a built-in keyword that logs the given parameter to the test report generated by Robot Framework.
With SeleniumLibrary,[6] writing tests for web applications is very easy too:
*** Test Cases ***
Demo
Open Browser https://www.google.com ie
Input Text id=lst-ib Hollywood Celebrities
Click Button Google Search
This test opens a new Internet Explorer browser window with Google and performs an Internet search for "Hollywood Celebrities" by pressing the button "Google Search".
With Robot Framework Browser,[7] automation can be done with Chromium, WebKit and Firefox.
*** Settings ***
Library Browser
*** Test Cases ***
Example Test
New Page https://playwright.dev
Get Text h1 == 🎭 Playwright
Add-ons
These libraries are best implemented in Python, but using Java or .NET is also possible.
Other languages such as Perl, JavaScript, and PHP can be used for libraries as well, using the remote library interface. See Robot Framework User Guide and documentation for more information.
References
- "Robot Framework Homepage". Robotframework.org. Retrieved January 20, 2019.
- "Laukkanen, Pekka: "Data-Driven and Keyword-Driven Test Automation Frameworks", 2006". Eliga.fi. Retrieved March 23, 2018.
- "Robot Framework Pypi Page". Robotframework.org. Retrieved March 23, 2018.
- "User Guide 3.1.2". Robotframework.org. Retrieved February 14, 2020.
- "RIDE Homepage". Github.com. Retrieved February 14, 2020.
- "Robot Selenium Library". github.com. Retrieved March 23, 2018.
- "Robot Framework Broswe". github.com. Retrieved August 5, 2020.
External links
- Official website
- "An Introduction to Test Automation Design" by Lisa Crispin
- Driving Development with Tests: ATDD and TDD by Elisabeth Hendrickson
- Writing Maintainable Automated Acceptance Tests by Dale H. Emery
- Usage of Robot Framework in Automation of Functional Test Regression by Stanislav Stresnjak and Zeljko Hocenski
- Selenium Meet-Up April 20, 2010 Elisabeth Hendrickson on Robot Framework
- Robot Framework: Semicolon-free testing by Filip Noetzel