Product Engineering

Robot Framework

Robot Framework

Robot Framework is generic test automation framework for acceptance testing and acceptance test-driven development (ATDD). It is operating system and application independent. The core framework is developed using Python but can also runs using Jython (JVM) and IronPython (.Net).

Robot framework follows keyword-driven approach in all available library. It has many built-in libraries along with third party library. All libraries are having low-level keywords which can be further extended with high-level keywords using combination of low-level keywords. Also, user can add custom library with keyword driven approach using Python or Java. It has libraries for Operating System, String, Telnet, Screenshot, Selenium, Robotium, Calabash, FTP, Rest-API, Databas, MongoDB, AutoIt, Java swing.

It has easy-to-use tabular test data syntax using Robot IDE (RIDE). Also, it has editor plugins for Eclipse, IntelliJ IDEA, Atom, Brackets, VIM, and Sublime. Even for test data editor it has plugins for Emacs major mode and TextMate bundle. It also has build management plugin for Maven, Ant and Jenkins. For generating HTML and XML reports it uses built-in rebot tool and it also provide library keyword documentation and test case documentations.

It also, allows for parallel test execution and serializing test results in SQLite database. It also provides facility for reporting manual in format compatible with Robot framework outputs. Robot framework HUB provides access to the Robot Framework test assets via browser.

RIDE – Resource configuration
RIDE - Resource configuration

RIDE – Resource configuration

RIDE – Test Case
RIDE - Test Case

RIDE – Test Case

Compared to other automation framework, robot framework provides more flexibility as it is platform and application independent and also, due to large set of available libraries, it enables to test multiple functionality in same test case. Also, it is easy to understand and adding new test cases for layman. As it provides well documentation for library keywords which has been imported to test suite or test case.