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.[2]
Developer(s) | Pekka Klärck, Janne Härkönen et al. |
---|---|
Initial release | 2.0 June 24, 2008 |
Stable release | 6.1.1[1]
/ 28 July 2023 |
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[3] 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.[4]
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.
In 2020 survey it scored 8 among 12 test automation frameworks, with 3 % of respondents using it.[5] In 2021 it had fallen to 18 among 22 with 2 % usage.[6]
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[7] in any text editor or using the Robot Integrated Development Environment (RIDE).[8] 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,[9] 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,[10] 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 documented remote library interface.
References
- "Release 6.1.1". July 28, 2023. Retrieved August 1, 2023.
- "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.
- "Testing and QA - The State of Developer Ecosystem in 2020 Infographic". JetBrains: Developer Tools for Professionals and Teams. Retrieved October 15, 2021.
- "Testing - The State of Developer Ecosystem in 2021 Infographic". JetBrains: Developer Tools for Professionals and Teams. Retrieved October 15, 2021.
- "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 Browser". github.com. Retrieved August 5, 2020.