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.

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.

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:

*** 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, 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, 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.

See also 
 Acceptance testing
 Keyword-driven testing
 Data-driven testing
 Test-driven development

References

External links 
 

Free software programmed in Python
Software testing
Free software testing tools
Software using the Apache license