robotframework

Robot Framework For Mobile Test Automation

Spread the love

Mobile Apps are windows to user solutions in IT. the numbers of mobile apps are increasing due to demands for smartphone users. Hence there are increasing of the competition to deliver quality apps. Testing mobile apps are thus becoming a key process before rolling out app releases to users. Hence, mobile test automation is the need of the hour, to facilitate thorough testing of mobile apps efficiently and in less amount of time.Robot framework is an open source test automation framework used for Acceptance-Test Driven Development (ATDD) implemented using python. It has an ecosystem which consists of various test libraries and tools that adhere to the keyword driven approach of robot framework. One of the external test libraries for mobile test automation is Appium Library which uses Appium to communicate with Android and iOS applications.Key Features of Robot 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
  • 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
  • Allows creation of custom keywords
  • Platform and application independence
Appium Library:Appium is one of the External Library of robot framework for the mobile application testing which only supports Python 2.x. Here most of the capabilities of Appium are framed into keywords, which are easy to understand and help understand the purpose of the test case by reading the script. It uses Appium (version 1.x) to communicate with Android and iOS applicationsKey Features of Appium:
  • No recompilation or modification of app to be tested is required
  • Tests can be written in any language using any framework
  • Standard automation specification and API
  • App source code is not needed
Robot – Appium Interaction: Appium server, robot’s Pybot and Appium-Python Client play a significant role in this interaction.Test Suites consisting of test cases written using robot’s keyword driven approach are used to test the mobile application (Android/iOS). Picture1Appium Server: Appium is mainly responsible for the interaction between the app’s UI and robot’s appium library commands. It needs to be up and running to facilitate this interaction. Appium is an open source engine running on Node.js.Appium-Python Client: Appium-Python Client facilitates the interaction between appium library and appium server using JSON Wire Protocol. This client initiates a session with the appium server in ways specific to appium library, resulting in a POST /session request to the appium server, with a JSON object. The appium server then starts an automation session and responds with a session ID. This session ID is used in sending further commands to the server.Pybot: Pybot reads the different framework files from framework’s code base and executes the tests by interacting with Appium Library. On completion of test case/suite execution, pybot generates a report and log files with complete details of the test run.This is a robot framework module used to trigger the test scripts written in Robot framework format.Test Reports and Logs: Report and log files are created in the form of HTML documents after execution of the test suite. These files contain a detailed summary of the test case execution and all the necessary statistics related to the test case execution. Picture2 To conclude, the robot framework facilitates automation of test cases for mobile applications with a simple tabular syntax, which is easy to read and is platform independent without making changes in the source code of the application under test. The keyword-driven approach of robot framework always ensures the readability and re-usability of the test cases, thus making the automation framework robust and user-friendly.Jenkins: The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project.Jenkins is a continuous monitoring tool taking care of all the activities required to be run as part of complete automation end to end run. In the figure above, the role of Jenkins is to monitor the jobs that have been triggered to run the pybot tests.Note: The Source Control Repository can also be used as Source for Jenkins Job to fetch the automation code repository.The following image shows one of the Jenkins jobs, which triggers a test script file named Launch_email_app.txt.

Picture3 JENKINS: ROBOT PLUG-IN REPORTUsing the Robot Framework Plug-In for Jenkins is really a nice enhancement to present the Robot Framework results.Jenkins has a plug-in for robot framework, which shows interactive reports. The user can drill down the reports to see details to analyze the health of the test cases running in consecutive job runs. The trend of every test case in every job running can also be analyzed with this plug-in. Picture4 To Conclude, the Robot Framework Jenkins Plug-In is a very decent addition to have a nicer visualization directly on the job result page. Furthermore, the report.html and log.html pages can be served by an external HTTP server to have direct access to them from the job page.  

What OdiTek offers


Refer our Skills page:

Robot Framework

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 testing Keyword-driven testing or some call it table-driven testing are the...

more

Client Testimonials

We had a tough deadline to launch our .Net based application that processes a lot of data, and got very frustrated with our development agency we hired. Fortunately we got Oditek, and they took over seamlessly the product development, launched the app & continued feature development. Just awesome!

Neal Bonrud

Co-Founder – SubScreener, USA

They were very attentive to our needs as clients and went out of the way to make sure our projects were taken care of. They were always able to get projects done in the specifications we requested. They are passionate about getting things done; I would definitely recommend them to lead any IT projects.

Dann Manahan

Sr VP Technology- 1031 Crowd Funding

I worked with OdiTek on few high profile banking application projects. They did a fantastic job with web applications & manual testing on the VAS apps for two leading banks of UK that included rigorous UAT phases. I recommend them for any application development where security matters.

Clive Shirley

CTO- Smarta, UK

OdiTek is our extended team who works on our key software projects. They are dependable, good in collaboration and technically very much to the level what we expect a global team should be. They had transformed our web applications, CRM and added mobility to existing business platforms here.

Matt Berry

IT Manager- First Option Online

It's been more than 4 years now that we are working with OdiTek on our cloud based web product development. It's been amazing working together, they are very competent on designing scalable, high performance apps. Their technical support is outstanding to say the least, even at odd hours.

Brad Taylor

CEO- BluesummitTech, USA

I am a fan of Team OdiTek since 2014 and have worked on many product development projects together. Specially worth mentioning their deliveries on VAS Banking web application development & manual testing services for Smarta, UK. They are highly skilled & a professional team to work with.

Tom Bowden

Digital Propositions - HSBC, London

OdiTek has been working on our Integrated Web-scale Mobile Platform i.e. Optimal Health since 2014. They are very professional and takes care of the requirements meticulously. They are technically very sound and sincere in ensuring quality & performance. Wonderful working with them!

Catherine Lim

COO- Medilink Global Sdn Bdh

You can trust the team, with minimum supervision you get the work done. They are honest, professional & committed to schedule & quality. I had been successfully running 3 business applications designed, developed and maintained by Oditek developers. It’s been a pleasure working with them.

Scott Evans

CEO- Pink Storage, UK

OdiTek has been working in custom software development, including services for test automation. Many of them have worked with me in 2009-10 when I was R&D Manager in NetHawk India. They have great enthusiasm & a passion to excel in bringing customer success. Their work has been very impressive.

Karen Hamber

Senior Product Manager- Skype

It's amazing to see these guys are turning their experience into a global delivery excellence at OdiTek. I am sure their past large scale product development experience will be handy to product companies. I would always recommend Oditek for software development, especially performance-driven solutions.

Juha Marjeta

Opti Automation Oyj

If you need additional information or have project requirements, kindly drop an email to: info@oditeksolutions.com

×