Creative Commons Attribution 3.0 License Fast facts ● Generic test automation framework – Utilizes the keyword-driven testing approach – Suitable for both “normal” test automation and ATDD ● Implemented with Python – Runs also on Jython (JVM) and IronPython (.NET) – Can be extended natively using Python or Java – Other languages supported via a remote interface ● Open source – Hosted on GitHub, Apache 2 license – Sponsored by Nokia Networks – Rich ecosystem and very active community High level architecture Simple keyword-driven syntax Data-driven tests Gherkin syntax Higher level keywords Simple test library API Variables ● Easy to create:
● Override from the command line:
variable BROWSER:IE Tagging ● Free metadata to categorize test cases ● Statistics by tags collected automatically ● Select test cases to be executed ● Specify which test cases are considered critical Clear reports Detailed logs Different test libraries ● Standard libraries – Included in normal installation – OperatingSystem, Screenshot, String, Telnet, XML, … ● External libraries – Must be installed separately – Selenium2Library, SwingLibrary, DatabaseLibrary, AutoItLibrary, SSHLibrary, HTTPLibrary, … ● Project and team specific libraries Editor support ● RIDE
● Plugins for Eclipse, IntelliJ/PyCharm, SubLime,
TextMate, Vim, Emacs, Brackets, Atom, ... Easy integration ● Test suites are created from files and directories – Trivial to store into any version control system ● Simple command line interface – Easy to start test execution by external tools ● Output also in XML format – All information in machine readable format – Outputs from different test runs can be combined ● Plugins for common CI and build tools – Jenkins, Ant, Maven For more information ● Ecosystem front page – http://robotframework.org ● Project pages – https://github.com/robotframework/robotframework ● Quick Start Guide – https://github.com/robotframework/QuickStartGuide ● User Guide – http://robotframework.org/robotframework/#user-guide ● Demo projects – http://robotframework.org/#documentation