Robot Framework for
automation of
e2e UI tests
by Wojciech Górecki
Automated testing – what for?
• To (eventually) lower workload
• To eliminate „human error”
• For regression
Advantages of automated testing
Automated testing is perfect for
• regression/repetitive testing
• long lasting tests
• testcases with a lot of input data
• Test scenarios with many middle steps
Disadvantages of automated testing
• Long time of creating a testcase
• Requires detailed description of tested functionality
• Requires discipline among testers (same test stack)
• Some scenarios are to complexed to be covered by
automated testcases
• Lack of libraries to cover some interfaces
Robot Framework
What is Robot Framework?
• Robot Framework is a generic test automation
framework for acceptance testing and acceptance
test-driven development (ATDD). It has easy-to-use
tabular test data syntax and it utilizes the keyword-
driven testing approach.
Robot Framework
• Robot Framework is operating system and
application independent. The core framework is
implemented using Python and runs also on Jython
(JVM) and IronPython (.NET).
Libraries
Standard External
Standard:
• • BuiltIn
Android library • Android Library
• Operating System • Archive Library
• • String
Java FX library • Database Library (Java)
• Process • Django Library
• DateAndTime • FTP Library
External:
• XML • HTTPRequestLibrary (Java)
Etc. • JavaFXLibrary
• iOS library • Database Library (Python)
• MongoDB library • Eclipse Library
• iOS library
• MongoDB
Etc.
It’s simple as that!
Search e-bay for BMX bicycles (testcase name)
Given e-Bay site is opened (keyword)
When item BMX Bike is searched (keyword)
Then item BMX Bike is shown in results (keyword)
Gherkin style test structure
• Given (preconditions)
• When (actual testcase content)
should describe action
• Then (all the checks)
Should describe state
Examples
Measurements through Rapid Procket