**Robot Framework** on geneerinen testiautomaatio-framework hyväksymistestaukseen ja hyväksymistestausvetoiseen ohjelmistokehitykseen (Acceptance test-driven development, ATDD). Robot Framework käyttää avainsanapohjaista rakennetta testien kuvaamiseen (Keyword-driven testing, KDT).

Historia
--------

Robot Frameworkin kehitys alkoi Pekka Klärckin diplomityöstä vuonna 2005. Ensimmäinen versio kehitettiin samana vuonna Nokia Networksilla. Versio 2.0 julkaistiin avoimena lähdekoodina 24. kesäkuuta 2008 ja viimeisin versio 3.0.2 julkaistiin 7. helmikuuta 2017 .

Robot Framework on kirjoitettu Python-ohjelmointikielellä ja sillä on aktiivinen kehittäjäyhteisö. Se on julkaistu Apache License 2.0 alaisena ja se on saatavilla osoitteessa robotframework.org. Nykyisin työkalun kehitystä jatkaa Robot Framework Foundation, joka myös järjesti vuonna 2018 Helsingissä Robot Framework -aiheisen konferenssin RoboConin.

Kuvaus
------

Testitapausten askeleet kuvataan avainsanoilla, joita voidaan kirjoittaa taulukkomaisesti allekkain. Taulukoiden formaatti voi olla tekstiä, HTML, tab-separated values (TSV), tai reStructuredText (reST). Taulukoiden muokkaamiseen on kehitetty Robot Frameworkin integroitu ohjelmointiympäristö RIDE.

Avainsanojen toteutus voidaan tehdä Python, Java tai .Net ohjelmointikielillä. Muita ohjelmointikieliä, kuten Perl, JavaScript tai PHP, voidaan myös käyttää Remote Library Interfacen  kautta.

Esimerkkejä
-----------

Seuraava testitapaus implementoi Hello world esimerkin:

| Testitapaus | Toiminta | Argumentti |
| --- | --- | --- |
| Demo | Log | Hello world |

Kirjoitettuna taulukkoon:

```
\*\*\* Test Cases \*\*\*
Demo
 Log Hello world

```

`Log` on sisäänrakennettu avainsana, joka kirjoittaa sille annetun parametrin Robot Frameworkin luomaan testilokiin.

Käyttämällä hyödyksi Robot Frameworkille tehtyjä kirjastoja, kuten SeleniumLibrary, testien kirjoittaminen web-sivuille on yksinkertaista:

| Testitapaus | Toiminto | Argumentti | Argument |
| --- | --- | --- | --- |
| Demo | Open Browser | https://www.google.com | ie |
|  | Input Text | id=lst-ib | Hollywood Celebrities |
|  | Click Button | Google Search |  |

Tämä testi avaa Internet Explorer -selaimen ja suorittaa verkkohaun.

Lähteet
-------

1. ↑  Release 6.1.1, 28. heinäkuuta 2023 (viitattu 1. elokuuta 2023). Tieto on haettu Wikidatasta.
2. ↑  Laukkanen, Pekka: "Data-Driven and Keyword-Driven Test Automation Frameworks", 2006 Eliga.fi. Viitattu March 23, 2018.
3. ↑  Robot Framework Pypi Page Robotframework.org. Viitattu March 23, 2018.
4. ↑  Robot Framework Homepage, 2018 Robot Framework Foundation. Viitattu August 17, 2018.
5. ↑  RoboCon 2018 Robot Framework Foundation. Viitattu August 17, 2018.
6. ↑  User Guide 3.0.2 Robotframework.org. Viitattu March 23, 2018.
7. ↑  RIDE Homepage Github.com. Viitattu March 23, 2018.
8. ↑  Remote Library Interface Github.com. Viitattu August 17, 2018.
9. ↑  Robot Selenium Library github.com. Viitattu March 23, 2018.

Aiheesta muualla
----------------

* Viralliset kotisivut
* An Introduction to Test Automation Design (Arkistoitu – Internet Archive), Lisa Crispin
* Driving Development with Tests: ATDD and TDD (Arkistoitu – Internet Archive), Elisabeth Hendrickson
* Writing Maintainable Automated Acceptance Tests, Dale H. Emery
* Usage of Robot Framework in Automation of Functional Test Regression, Stanislav Stresnjak & Zeljko Hocenski
* Selenium Meet-Up April 20, 2010 Elisabeth Hendrickson on Robot Framework
* Robot Framework: Semicolon-free testing, Filip Noetzel