Robot Framework
Type of test automation framework
- 2 min read
- 4 chapters
Related on Lably
Through Open-source software, Python (programming language) and Web application
History
The basic ideas for Robot Framework were shaped in Pekka Klärck's masters thesis 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.
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. In 2021 it had fallen to 18 among 22 with 2 % usage.
Sign in to keep reading
3 more chapters are free with a Lably account.
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 in any text editor or using the Robot Integrated Development Environment (RIDE). RIDE simplifies writing test cases by providing framework-specific code completion, syntax highlighting, etc.
Examples
The following test case implements a Hello, World! example:
<span id="mwRQ"></span><span class="gh" id="mwRg">*** Test Cases ***</span> <span class="gu" id="mwRw">Demo</span> <span class="p" id="mwSA"> </span><span class="nf" id="mwSQ">Log</span><span class="p" id="mwSg"> </span><span class="s" id="mwSw">Hello world</span>
Log is a built-in keyword that logs the given parameter to the test report generated by Robot Framework.
With SeleniumLibrary, writing tests for web applications is very easy too:
<span id="mwVg"></span><span class="gh" id="mwVw">*** Test Cases ***</span> <span class="gu" id="mwWA">Demo</span> <span class="p" id="mwWQ"> </span><span class="nf" id="mwWg">Open Browser</span><span class="p" id="mwWw"> </span><span class="s" id="mwXA">https://www.google.com</span><span class="p" id="mwXQ"> </span><span class="s" id="mwXg">ie</span> <span class="p" id="mwXw"> </span><span class="nf" id="mwYA">Input Text</span><span class="p" id="mwYQ"> </span><span class="s" id="mwYg">id=lst-ib</span><span class="p" id="mwYw"> </span><span class="s" id="mwZA">Hollywood Celebrities</span> <span class="p" id="mwZQ"> </span><span class="nf" id="mwZg">Click Button</span><span class="p" id="mwZw"> </span><span class="s" id="mwaA">Google Search</span>
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, automation can be done with Chromium, WebKit and Firefox.
<span id="mwdQ"></span><span class="gh" id="mwdg">*** Settings ***</span> <span class="kn" id="mwdw">Library</span><span class="p" id="mweA"> </span><span class="nn" id="mweQ">Browser</span> <span class="gh" id="mweg">*** Test Cases ***</span> <span class="gu" id="mwew">Example Test</span> <span class="p" id="mwfA"> </span><span class="nf" id="mwfQ">New Page</span><span class="p" id="mwfg"> </span><span class="s" id="mwfw">https://playwright.dev</span> <span class="p" id="mwgA"> </span><span class="nf" id="mwgQ">Get Text</span><span class="p" id="mwgg"> </span><span class="s" id="mwgw">h1</span><span class="p" id="mwhA"> </span><span class="s" id="mwhQ">==</span><span class="p" id="mwhg"> </span><span class="s" id="mwhw">🎭 Playwright</span>
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.

