Open source Test Automation Tools for Mobile Applications A Primer



Similar documents
WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING

Automated testing for Mobility New age applications require New age Mobility solutions

Mobile Test Automation - Right Tools and Right Approach

Mobile Application Testing Challenges & Best Practices

Distributed Agile Development in the Cloud

Mobile Automation: Best Practices

The Customer. Manual and Automation Testing for a leading Enterprise Information Management (EIM) Solution provider. Business Challenges

Mobile Test Automation: Lessons Learned in the Trenches

Mobile Performance Testing Approaches and Challenges

RUN THE RIGHT RACE. Keep pace with quickening release cycles. Discover automation with the human touch. CHOOSE A TEST TO RUN BELOW

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,

Image Area. White Paper. Best Practices in Mobile Application Testing. - Mohan Kumar, Manish Chauhan.

Mobile App Testing Guide. Basics of Mobile App Testing

International Journal of Advanced Engineering Research and Science (IJAERS) Vol-2, Issue-11, Nov- 2015] ISSN:

Simple Mobile Application & Browser Testing

Overview Company & Product Portfolio

Web UI & Functional Test Automation for Continuous Agile Deliveries

Cognizant Mobility Testing Lab A state of the art Integrated platform for Mobility QA

W H I T E PA P E R. Cloud Migration Methodology -Janaki Jayachandran (Director of Technology) a t t e n t i o n. a l w a y s.

QEx Whitepaper. Automation Testing Pillar: Selenium. Naveen Saxena. AuthOr:

Mobile Test Strategy. Shankar Garg. Senior Consultant - Testing

TURKEY SOFTWARE QUALITY REPORT

Test Automation Tool comparison HP UFT/QTP vs. Selenium - Prashant Malhotra

Selecting the Right Mobile Test Automation Strategy: Challenges and Principles

Guide to Mobile Testing

Best Practices in Automation Testing of Mobile Applications

Cognizant Mobility Testing Lab. The faster, easier, more cost-effective way to test enterprise mobile apps.

Perfect Your Mobile App with Load Testing and Test Automation

From Traditional Functional Testing to Enabling Continuous Quality in Mobile App Development

Testing & Assuring Mobile End User Experience Before Production. Neotys

Continuous Integration (CI) for Mobile Applications

Automation Testing in Mobile Applications Swati Hajela

Syllabus Version

geniusport mobility training experts

Lee Barnes, CTO Utopia Solutions. Utopia Solutions

Latest Trends in Testing. Ajay K Chhokra

MOBILE APPLICATION TESTING. TekMindz s Testing solutions for enterprises INDZ TM TEK

Testing in a Mobile World

Syllabus Version 2.5_R ( )

Total Quality in Mobile Apps -Continuous Integration & Performance Testing

Review of Mobile Applications Testing with Automated Techniques

Using Story Points to Estimate Software Development Projects in the Commercial Phase

Mobile Testing That s Just a Smaller Screen, Right?

Automation using Selenium

White Paper. Bridging the essential gap between Mobile Cloud and crowd based testing. 1. Introduction. 2. Testing Lifecycle

White Paper Bridging the Essential Gap between Continuous Quality and Crowd Based Testing

Bringing Value to the Organization with Performance Testing

Business Assurance & Testing QEx Automation Platform

MANAGEMENT SUMMARY INTRODUCTION KEY MESSAGES. Written by: Michael Azoff. Published June 2015, Ovum

Testing the Social-Mobile-Analytics-Cloud Pack: The Way Forward

THE BUSINESS CASE FOR HYBRID HTML5 MOBILE APPS

On the Edge of Mobility Building a Bridge to Quality October 22, 2013

Architectural considerations while developing Enterprise Mobile Applications

Mobile Application Testing

Better Software Though Expertise, Collaboration & Automation. BDD, DevOps and Testing

SOFTWARE SERVICES. Enterprise QA Solutions. Technology Powered Industry Diversified Excellence Driven

Testadon Certification

SELENIUM GRID BUILD VS. BUY

Best Practices for Performance Testing Mobile Apps

How To Test For Performance

View Point. Developing a successful Point-of-Sale (POS) test automation strategy. Abstract. - Sujith George

Mobile Test Automation Framework

Quality Testing. Assured.

Here s how to choose the right mobile app for you.

Mobile application testing for the enterprise

How to Get the Most out of Your CI/CD Workflow Using Automated Testing

Agile Web Application Testing

Open Source in Mobile Test Automation. Ru Cindrea - Altom ru@altom.ro

Solutions for Quality Management in a Agile and Mobile World

Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD

Higher Focus on Quality. Pressure on Testing Budgets. ? Short Release Cycles. Your key to Effortless Automation. OpKey TM

Tavant Technologies. Flexible Approach to Test Automation with Measureable ROI. White Paper. Madan Mohan Reddy B Santosh Kumar CH

Localization Testing in Mobile World Software Testing Conference, 2013

eggplant for Cross Platform Test Automation TestPlant Nick Saunders

Title: Appium Automation for Mac OS X. Created By: Prithivirajan M. Abstract. Introduction

A new Breed of Managed Hosting for the Cloud Computing Age. A Neovise Vendor White Paper, Prepared for SoftLayer

STeP-IN SUMMIT June 18 21, 2013 at Bangalore, INDIA. Enhancing Performance Test Strategy for Mobile Applications

Mastering Mobile Web with 8 Key Rules. Mastering Mobile Web with 8 Key Rules

STeP-IN SUMMIT June 2014 at Bangalore, Hyderabad, Pune - INDIA. Mobile Performance Testing

Building a Mobile App Security Risk Management Program. Copyright 2012, Security Risk Advisors, Inc. All Rights Reserved

Mobile Application Development Meets the Mainstream

Transcription:

W H I T E PA P E R Open source Test Automation Tools for Mobile Applications A Primer Authors: Anil Sannareddy: Senior Test Automation Architect, Aspire Systems Murali Murugan: Lead Test Automation Consultant, Aspire Systems a t t e n t i o n. a l w a y s.

C O N T E N T S Executive Summary 3 Why test automation for mobile applications? 3 Open Source vs Proprietary Test Automation Tools 3 Maintenance 3 Enhancements 3 Criteria for selecting an open-source tool 3 Support for multiple platforms 3 Support for black box testing 3 Root or Jailbreak requirement 4 Support for integration with CI/CD Tools 4 Tools Evaluated 4 Conclusion 5 2

With every new device, platform and version, the market only continues to witness more of them Executive Summary Mobile is changing the way enterprises create software, but trends and best practices for developers are emerging, helping to calm the chaos. The same cannot be said for mobile testing the variety of devices, operating systems, and front-end development technologies make quality appear to be completely TBE (the best ever) delivered to the market in much shorter time frames than dev shops are used to. - Forrester Report 2014 A number of test automation tools and frameworks have hit the market during the recent years for mobile applications testing. With every new device, platform or version, the market only continues to witness more of them. Given the criticality involved in testing mobile applications today, an important question is: What tools can the tester rely on in order to deliver high quality mobile applications? This paper discusses the various parameters to be considered while choosing a test automation tool/framework for automation. The paper also compares some of the leading mobile test automation tools from the open source world. What tools can the tester rely on to deliver high quality mobile applications? Why test automation for mobile applications? While we understand and agree that manual testing definitely has its own advantages, the main rationale behind choosing test automation for mobile applications is to handle regression testing across multiple devices and platforms. While users do not like to see broken apps, it is unfair to expect manual testers to cover every possible functional area of the application across the various devices and operating system platforms and make it bug free. The reader might argue that, while functional testing is just one part of testing the application, the Performance, Installation, Usability and Certification testing are other areas to be tested on mobile devices for which test automation may not be feasible. The main objective of this paper is to discuss functional testing and hence our recommendation would be, to go with test automation. Open Source vs Proprietary Test Automation Tools In recent days there are frequent changes in OS versions with new features or updates to the existing components. Considering this situation, the two very important questions that have to be addressed are: How are these frequent changes going to affect the test automation? What type of tools should be chosen for such kind of ongoing changes? Maintenance Open source tools are maintained by a larger community compared to proprietary commercial tools which are owned and maintained by a single entity. Moreover, tool enhancements to proprietary commercial ones come with a price tag as well as a long wait time to fix the issue. The above scenarios are very well tackled by the open source community by being very proactive. With skilled developers who are available to anticipate, mitigate and contribute to the OS changes, open source automation tools are made available immediately to the end users. Thus cost and time are better managed and effectively used by open source tools. Enhancements Another major scenario would be new feature requests. Open source tools welcome new feature requests and make them readily available to everyone. Open source tools also provide the option to develop any new feature that could be shared with the tool community, reviewed and made available to all. Although new feature requests can be made in commercial tools too, it will be processed at a slower pace considering the tool owner s priority which may or may not fit within the timeframe that the end user may be looking for. Criteria for selecting an open-source tool We have considered the following parameters in our analysis of tools. Support for multiple platforms Selecting tools that complement multiple platforms for different devices whilst development time and costs are minimized. Today, the leading platforms are ios and Android, hence it is imperative that we consider them with due weightage. Support for black box testing Selecting tools that could perform the core functionalities of mobile applications as per business specifications. The tool should not only mirror the user experience but should also be agile in usage. 3

Mobile automation tools available for ios and Android: Root or Jailbreak requirement Being in a highly competitive environment the tool should be able to support root or jailbreak requirement. Support for integration with CI/CD Tools The tool should be compatible with CI servers which uses automated testing to implement quality control. Tools Evaluated The list of mobile automation tools available for ios and Android ios Calabash-iOS Frank ios-driver Appium Android Calabash-Android MonkeyTalk Robotium Appium The market share is predominantly taken by Calabash and Appium. The picture below sums up the debate between the two based on different criteria. Comparison of tools based on various criteria Cross - platform Cross - browser Reusability Data driven Automation support Integration with test management tool Native ID support Web HTML5 (DOM) commands Image recognition OCR ios, Android Windows, Blackberry Simulators/Emulators Supported Capabilities Jail breaking/ rooting Supported Devices Identification Methods Comparison of Calabash and Appium, major market share holding tools Recorders Support for non-functional requirements Test Execution Battery consumption, Memory usage Memory Leaks, CPU Utilization Bandwidth usage, Installation Time User interface changes, Interruptions, Sensors, Localization Full Functionality Support Full Functionality Support Multi-touch, Swipe, Drag and Drop Zoom, Scrolling, Click on security alerts Click on System alerts Reboot device, Awake device from sleep Operate device Back, Home & Menu buttons Parallel Execution Continuous integration Landscape mode, Device Keyboard Input Special Character Input 4

In the fast-growing mobile environment it has become inevitable for businesses to adopt mobile technology to improve efficiency. Conclusion In today s fast-growing mobile environment it has become inevitable for businesses to adopt mobile technology to improve efficiency. Though technical challenges have had an impact in production of mobile applications, the crucial challenge is to test whatever has been developed and ensure quality at all levels in the product being released in the market. Despite obstacles in mobile testing, careful selection of tools that maximize the scope of automation and maximize the utilization of test scenarios could be a breakthrough. As maximizing automation is an effective way of expediting test processes, it is advisable to optimize it with an open source tool that could cater the business need. As maximizing automation is an effective way of expediting test process, it is advisable to optimize it with an open source tool that could cater the business need. Stacks of open-source mobile automation tools available in the market assists test engineers to make an informed decision before the application being deployed on a platform or an environment and it checks the compliance with the device. A comprehensive approach on choosing the appropriate tool set with an extensive test coverage which could accommodate businesses is precisely how the vendors could optimize on open-source mobile automation tools. About the Authors Anil Kumar Sannareddy Senior Test Automation Architect, Aspire Systems Anil has spent considerable time with Fortune 500 companies in implementing Test Automation solutions for both Web and Mobile environments and has huge experience in the DevOps environment. He has presented papers on Test Automation in various conferences across the globe. Murali Murugan Lead Test Automation Consultant, Aspire Systems Murali has experience with most of the industry leading tools like Test complete, Selenium, Web driver, Calabash and Appium. He has been associated with some of our top customers in identifying test automation solutions and integrating them with the DevOps environment. He is also a certified ethical hacker which complements his Testing background. ABOUT ASPIRE Aspire Systems is a global technology services firm serving as a trusted technology partner for its customers. The company works with some of the world's most innovative enterprises and independent software vendors, helping them leverage technology and outsourcing in Aspire s specific areas of expertise. Aspire System s services include Product Engineering, Enterprise Solutions, Independent Testing Services, Oracle Application Services and IT Infrastructure & Application Support Services. The company currently has over 1,400 employees and over 100 customers globally. The company has a growing presence in the US, UK, India, Middle East and Europe. For the fourth time in a row, Aspire has been selected as one of India s Best Companies to Work For by the Great Place to Work Institute, in partnership with The Economic Times. NORTH AMERICA UK BENELUX NORDIC MIDDLE EAST INDIA +91-044 - 67404000, +1-630- 368-0970, +44-203 170 6115 For more info contact info@aspiresys.com or visit www.aspiresys.com 5