Robot Framework is a keyword-driven test automation framework, written in Python. It empowers testers to automate and manage complex workflow scripts efficiently. It utilizes the keyword-driven testing approach & it has easy-to-use tabular test data syntax.Keyword-driven/Table-driven testingKeyword-driven testing or some call it table-driven testing are the notions widely applied to an application-independent automation. The tester needs to develop data tables with keywords, independent of the test automation framework or any other tool used to run them. Then it is required to code the test script that will, in its turn “drive" the tested application and the data. Tables in a keyword-driven test will contain the information on the functionality of the tested application and step-by-step instructions for each test.
- Lower-level keywords: To keep the test cases minimal and concise the required functionality testing is separated into several lower-level keywords.
- Technical keywords: They are implemented into the test to actually access the system and run the tests.
- All the features, mentioned below ensure that Robot Framework can be used to automate test cases in a quick and proficient fashion. High-Level Architecture
- Simple Tabular Syntax
- Data-driven Test Cases
- Separate Test Data Editor
- Clear Reports
- Detailed logs
- Generic test libraries
- Webtesting, Swing, SWT, Windows GUIs, databases, SSH, Telnet,...
- Remote test libraries and other plugins for Jenkins/Hudson, Maven, Ant,..
- Text editor support: Emacs, Vim, TextMate
Our expertise team use robot framework for testing python code and also implement in variety of testing tasks, including:
- RESTful API testing
- SOAP service testing
- Website testing
- Database testing
- Desktop application testing
- Mobile application testing (with selenium and 3rd party drivers)
- Unit and integration testing (though, there are often better tools for that job)
- Manual testing - scenarios can be written as if they were automated, they can prompt the user rather than perform a task.
Writing Test Cases
Moving on to the test cases, Robot has all its test cases in tables. We save them either in HTML or table-separated value (TSV) files.
Managing Test Cases
There are several ways in which we organize test cases in Robot Framework. Test cases are made into test suites, which are sets of test cases, taken either from single or multiple files. Another key feature of Robot is test case tagging. Each tag (e.g. critical, quick) assigns a test case to a separate set. When executing, we run the tests based on tags, like “critical” and “quick”.
Running Test Cases
Once we’ve finished writing the test cases we need, those are executed using provided Python scripts. Since our lovely Robot Framework is system- and platform- independent - we run our tests any platform with Python: be it Windows, Linux, Unix or Mac.
The execution of our test cases is done in the following steps:
- collecting test cases, reading and setting variables
- running all the steps in every test case
- providing the execution statistics (which test cases have passed/failed)
- writing the detailed log in xml format
- generating the report and log in html format.
Test libraries provide the actual testing capabilities to Robot Framework by providing keywords. There are several standard libraries that are bundled in with the framework, and galore of separately developed external libraries that can be installed based on your needs.
BuiltIn: Provides a set of often needed generic keywords. Always automatically available without imports.
Collections: Provides a set of keywords for handling Python lists and dictionaries.
DateTime: Library for date and time conversions. New in Robot Framework 2.8.5.
Dialogs: Supports pausing the test execution and getting input from users.
OperatingSystem: Enables various operating system related tasks to be performed in the system where Robot Framework is running.
Process: Library for running processes in the system. New in Robot Framework 2.8.
Remote: Special library acting as a proxy between Robot Framework and test libraries elsewhere. Actual test libraries can be running on different machines and be implemented using any programming language supporting XML-RPC protocol.
Screenshot: Provides keywords to capture and store screenshots of the desktop.
String: Library for generating, modifying and verifying strings.
Telnet: Makes it possible to connect to Telnet servers and execute commands on the opened connections.
XML: Library for generating, modifying and verifying XML files.
Supporting tools ease everything surrounding tests: editing, running, building and so on. Most of these tools are developed as separate projects, but some are built into the framework itself.
Rebot: Tool for generating logs and reports based on XML outputs and for combining multiple outputs together.
Libdoc: Tool for generating keyword documentation for test libraries and resource files.
Testdoc: Generates high level HTML documentation based on Robot Framework test cases.
Tidy: Tool for cleaning up and changing format of Robot Framework test data files.
Skills and Matrix
Robot Framework is very easy-to-use, yet still powerful enough to be an acceptance-level test automation framework. It is quite flexible and can extend its functionality through Python and Java modules.
Our in-depth perceptive and expertise in robot framework testing reflects in our execution methodology. We ensure that our clients get the benefits of all the powerful features offered by this framework.
- Business Keyword driven, tabular and easy to understand syntax for test case development.
- Allows creation of reusable higher-level keywords from the existing keywords.
- Allows creation of custom keywords.
- Platform and application independence.
- Support for standard and external libraries for test automation.
- Tagging to categorize and select test cases to be executed.
- Easy-to-read reports and logs in HTML format.
Need Our Competencies? Contact us:
If you need to hire expert developers or test professionals for your next project or want to outsource development tasks on an ongoing basis by having an extended offshore software development team, get in touch with OdiTek Solutions today.contact us
No up-front payment
We don't always ask dollars to kick-start, we wish to forge relationships where you will be assured that the team on which you would rely to build your product or solutions are good enough to do it. Reach out today, we would love to kick start the journey together!contact us
We are obliged to work on a mutually beneficial arrangement, contracts mean a legal paper but we understand that it's you who will decide w.r.t. work. We are open to both formal contracts as well as quick-notice start-stop mode of engagement.contact us
Before you decide to setup a Product Development Or an off-shore team, let us know if you wish a trial period. We can setup a team to work on an MVP or a trial period for 4 weeks without invoice. We believe to collaborate where we add value to the mission.contact us
- Automated Testing
- CMS Development
- Data Analytics
- Database and Client-Server
- Desktop Application Development
- Domain Based Testing
- Domain Independent Testing
- E-Commerce Development
- ENTERPRISE PRODUCT DEV
- IoT (Internet of Things)
- Mobile Development
- Reports / BI Development
- Telecom Wireless
- Web Scale Product Design & Development
Why Choose OdiTek
- Technology Excellence across platforms
- Business ideas into commercial applications
- Domain Intensive Value Proposition
- Significant Cost Reduction with ODC model
- Get 2-4 weeks Risk-Free Trial before kick-start
- Pool of expertise in Agile Teams to choose
- Flexible work hours based on need
- Commitment to excellence, Reliable
- Competitive cost Proposition
- Wider platform coverage
- Business application & interface development
- Highly trained resources
- Commitment to Quality
- Agile methodologies & practices
- Deep domain & functional expertise
- Happy international clients
- Software programming and testing
- Cross-platform development skills
- Multiple OS, tools, technology skills
- Web, mobile & business applications
- Automated testing across industry verticals
- Optimized, high-productivity porting
- Effective communication
- International Project Management skills