"Selecting Mobile Application Automation Tools"



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

Selecting the Right Mobile Test Automation Strategy: Challenges and Principles

Viewpoint. Choosing the right automation tool and framework is critical to project success. - Harsh Bajaj, Technical Test Lead ECSIVS, Infosys

Mobile Testing Trends

Cross Platform Mobile. -Vinod Doshi

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

Lee Barnes, CTO Utopia Solutions. Utopia Solutions

Syllabus Version

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

WHITEPAPER BEST PRACTICES IN MOBILE APPLICATION TESTING

Automation Testing in Mobile Applications Swati Hajela

Automation using Selenium

Testing Mobile Applications

Mobile Test Automation - Right Tools and Right Approach

Syllabus Version 2.5_R ( )

SOFTWARE TESTING TRAINING COURSES CONTENTS

Mobile Test Automation: Lessons Learned in the Trenches

Business Assurance & Testing QEx Automation Platform

Mobile Application Testing

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

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

Mobile Automation: Best Practices

Review of Mobile Applications Testing with Automated Techniques

POINT-TO-POINT vs. MEAP THE RIGHT APPROACH FOR AN INTEGRATED MOBILITY SOLUTION

Software Automated Testing

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

Test Automation -Selenium

Mobile Test Automation Framework

Mobile Application Testing

Mobile Performance Testing Approaches and Challenges

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

Mobile Phones Operating Systems

Know the Difference. Unified Functional Testing (UFT) and Lean Functional Testing (LeanFT) from HP

Introduction to Android

Middleware- Driven Mobile Applications

Copyrighted , Address :- EH1-Infotech, SCF 69, Top Floor, Phase 3B-2, Sector 60, Mohali (Chandigarh),

Quality Testing. Assured.

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

Guide to Mobile Testing

Enterprise-grade Mobile Application Quality across your Application Life cycle THE MOBILECLOUD PLATFORM Perfecto Mobile. All rights reserved.

STUDY AND ANALYSIS OF AUTOMATION TESTING TECHNIQUES

Mobile Application Test Automation Best Practices for Best Results. A white paper from Mobile Labs, Inc.

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

Mobile Testing That s Just a Smaller Screen, Right?

How to Choose Right Mobile Development Platform BROWSER, HYBRID, OR NATIVE

Best Practices in Automation Testing of Mobile Applications

DEPLOYMENT. ASSURED. SEVEN ELEMENTS OF A MOBILE TEST STRATEGY. An Olenick & Associates White Paper

Mobile Testing Preparing for a fast-changing mobile world. Sudheer M, Practice Head - Mobility Testing and Automation

AUTOMATING THE WEB APPLICATIONS USING THE SELENIUM RC

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

Latest Trends in Testing. Ajay K Chhokra

Mobile App Testing Guide. Basics of Mobile App Testing

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

QA Tools (QTP, QC/ALM), Selenium with Java, Mobile with Automation, Unix, SQL, SOAP UI

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

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

GLOBAL JOURNAL OF ENGINEERING SCIENCE AND RESEARCHES

Evaluating Cross-Platform Development Approaches (WORA Tools ) for Mobile Applications

Testing. Chapter. A Fresh Graduate s Guide to Software Development Tools and Technologies. CHAPTER AUTHORS Michael Atmadja Zhang Shuai Richard

Contents. Executive Summary 3. A Summary of Mobility Challenges 4. Mobile Platform Capability: 6. Mobile Functional Testing 8. Mobile Performance: 10

Android 5.0: Lollipop OS

LoadRunner and Performance Center v11.52 Technical Awareness Webinar Training

Web UI & Functional Test Automation for Continuous Agile Deliveries

Automation Guide for SAP Regression Testing. Author: Bhavana Pande

MENDIX FOR MOBILE APP DEVELOPMENT WHITE PAPER

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

Lecture 3 Mobile App Development (Android, ios, BlackBerry, Windows Mobile) <lecturer, date>

A Review of Different Comparative Studies on Mobile Operating System

ASHVINS Group. Mobile Application Testing Summary

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

Perfect Your Mobile App with Load Testing and Test Automation

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

Mobile Test Strategy. Shankar Garg. Senior Consultant - Testing

Technology Services...Ahead of Times. Enterprise Application on ipad

Mobile Operating Systems Lesson 07 Symbian OS

INTERNATIONAL JOURNAL OF NEXT GENERATION COMPUTER APPLICATIONS ISSN X Web based Software Project Management using Android Mobile

DESIGN OF AUTOMATION SCRIPTS EXECUTION APPLICATION FOR SELENIUM WEBDRIVER AND TestNG FRAMEWORK

Smartphone Enterprise Application Integration

Introduction to Mobile Performance Testing

The Suitability of Native Application for University E-Learning Compared to Web-Based Application

Comparative Study of Automated Testing Tools: Selenium, Quick Test Professional and Testcomplete

Mobile Application Testing Challenges & Best Practices

Mobinius Testing Services OPTIMIZE YOUR PERFORMANCE AND ENSURE A SUPERIOR USER EXPERIENCE

Mobile Performance Management Tools Prasanna Gawade, Infosys April 2014

a new generation software test automation framework - CIVIM

Sandesh Prasanna Kumar

Testing Tools Content (Manual with Selenium) Levels of Testing

eggplant for Cross Platform Test Automation TestPlant Nick Saunders

1. What are the System Requirements for using the MaaS360 for Exchange ActiveSync solution?

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd.

Overview Company & Product Portfolio

Transcription:

T23 Class 10/6/2011 3:00 PM "Selecting Mobile Application Automation Tools" Presented by: Pradeep Kumar Govindasamy Cognizant Technology Solutions Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 888 268 8770 904 278 0524 sqeinfo@sqe.com www.sqe.com

Pradeep Govindasamy Cognizant Technology Solutions With more than twelve years of experience in the information technology industry, Pradeep Govindasamy currently holds the lead role for the Automation and Mobile Testing Center of Excellence at Cognizant. Pradeep started and is now the research and development unit lead for the automation and mobile practices which has more than 1500 experts servicing global customers. Pradeep has spoken on topics of automation, test data management, and tools at conferences worldwide including STARWEST, STAREAST 2011, Swiss Testing Day, HP Universe, and EuroStar.

Mobile Testing Selecting Mobile Application Automation Tools Thursday, October 06, 2011 3:00 PM 1 2011, Cognizant Agenda Demystifying Mobile Platforms Introduction Understanding & Challenges Testing Mobile Automatin Tool selection Criteria Understanding tools ol etermining the Right too De Cognizant framework n class frameworks Best i 2

Mobile Operating Systems Part 1 Demystifying the Mobile World 3 Mobile Platform iphone OS Android Windows Phone Symbian Blackberry OS Current version 4.3 Current Version 3 Current Version 7 Symbian^4 Current version 6.0 Closed Source Open Source Closed Source Open Source Closed Source Apple Google Microsoft Visual Multitasking RIM Restricted Multi tasking Multi tasking Restricted Multi tasking Multi touch interface Multi tasking Safari web browser Chrome/ Webkit Browser Multi touch interface Mozilla Browser Webkit Browser Sync Patch updates Over the air updates I.E / Trident Sync/Patch OTA Sync/Patch OTA 4

World Wide OS Market Share Trend Worldwide Smartphone operating system (OS) market share in 2009 2015, according to Gartner Operating Systems 2009 market share 2010 market share 2011 market share 2015 market Share Android 3.9% 22.7% 38.5% 48.8% BlackBerry 19.9% 16.0% 13.4% 11.1% ios 14.4% 15.7% 19.4% 17.2% Symbian 46.9% 37.6% 19.2% 0.1% Windows Phone/Mobile 8.7% 4.2% 5.6% 19.5% Others 6.1% 3.8% 3.9% 3.3% Total smartphones sold 172 million 297 million 468 million 631 million 5 What is Mobile App Mobile Applications are a rapidly developing segment of the global Mobile Market. They consists of software that runs on a mobile device and performs certain tasks before the user of the Mobile Phone. They can be downloaded physically through USB / WIFI from a desktop or can be downloaded by a web server over internet. IQ Video Players Audio Players Streaming Players Graphical Viewers Presentation Viewers Multimedia Travel City Guide Currency Converter Translators Weather Itinerary Calendars Calculators Diary Banking / Finance Directory Services Productivity MOBILE Application Communication Utilities Email Clients IM Clients Browser apps Social Network Apps Address Book manager Call Manager File Manager 6

Types of Mobile Applications Native Applications Applications that reside on the device and are accessible at any point of time May require network connectivity Messaging, Telephony, Multimedia, PIM, etc Hybrid Applications Third party applications that are installed in the device Requires network connectivity. Google Chat / Messenger, shopping application on iphone Web Based Applications Accessible through mobile browsers Interfaces with external systems/servers Wireless Application Protocol (WAP) or Hyper Text Transfer Protocol (HTTP) Mobile Banking, Reservation system Deciding the type Depending on the requirements. Some apps are a better fit with web technologies than others. Knowing the pros and cons of each approach will help you make the right decision about which path is appropriate for your situation. 7 Stop! Quality check for Mobile Application Increase of Mobile Applications Hurry to market pressures Being the first increases greater usage of Applications Failure and Security losses destroys the brand reputation Test coverage Unhappy Customer Remedy End to End testing is required for thorough validation of Mobile Applications. Mobile Automation testing is vital to ensure a high application quality and faster time to market in a highly competitive market Mobile Automation Testing becomes Paramount 8

Image Area Part 2 Understanding the Components of Mobile Automation Testing 9 2011, Cognizant Mobile Testing? Mobile Testing Hardware / Device Testing Software Testing Factory testing Certificate Testing Application testing Content testing 10

Mobile Testing? Mobile Testing intends to enable greater mobile experience Mobile Application testing tests application on various parameters to enable defect free mobile applications Automating Mobile Application Testing can deliver greater benefits in-terms of cost and quality Hardware or Device Testing Factory Testing Certificate Testing Mobile Testing Application Testing Software Testing Content Testing 11 Mobile App Testing Challenges DEVICE DIVERSITY Multiple Platforms Multiple l Browsers Rendering differences Mobile devices have different application runtimes. NETWORK CHALLENGES Multiple type of Networks(GSM / GPRS / Wi Fi / Wi Max etc ) Unpredictable time taken for data transfer Different speed of connectivity across geographies Multiple Network Operators with customized Network features HARDWARE CHALLENGES Limitations in processing speed Limitations of Memory size of mobile Differences in Communication Protocols of devices WAP/ HTTP. 12

Mobile Application Testing Eco System Test Tool Automation Tools Simulators Emulators Mobile Application Testing Real Devices Virtual Devices 13 Mobile Automation Testing? Usual Rare Net Net Why? Quicker Highly reliable Though there are challenges the benefits of Automation supersedes the demerits Cheaper Robust CHALLENGES In numerable variations Limited Resources Numerous Connectivity modes Varying features OS/ Platforms Hardware devices/ OEM Processing speed Small memory Wi Fi, Wi Max, Cellular networks Accelerometer Radio trasmitter 14

A Typical Test Automation setup for mobile Real Device Emulator Automation tool Connectivity Bluetooth Wi Fi USB Remote 15 Typical Mobile Automation Mobile applications under Test (AUT) App 1 App 2 App N Test Data Real Devices/ Emulator/ Remote ss Interface Acces Automation Engine Starts and automates test cases on the application working on device and / or emulator Schedule and track test execution Test Management Tool Scheduler Defects Report Defects 16

Mobile Automation Approach Understand Requirements and Budgets Traditional i.e Regression etc Classify Application as Native, Hybrid, Web Based Type of test automation Non Traditional i.e Compatibility, Location based etc Determine feasibility of Automation Scan markets to identify tools for Automation Determine the test tool for maximum automation coverage Evaluate cost benefit analysis of patch/ tool creation for Automation ti Perform manual testing and create Scripts for Automation Execute manual testing and create test scripts Execute Automation test cycles Execute Automation test cycles 17 Mobile Automation Approach Traditional i.e Regression etc Non Traditional i.e Compatibility, Location based etc Classify Application as Native, Hybrid, Web Based Understand Requirements and Budgets Determine feasibility of Automation Determine the test tool for maximum automation coverage Perform manual testing and create Scripts for Automation Types of Test Automation Scan markets to identify tools for Automation Evaluate CBA of patch/tool creation for Automation Execute Automation test cycles Manual execution, creation and execution of Automation test cycles 18

Candidates for Mobile Automation Business Typical Candidates for Mobile Automation Testing Types Testing Tools Complex business logic Lengthy business flow Data Driven Test scenarios Frequently changing Application under test Smoke and build acceptance Testing. Regression Testing Synchronization Testing Compatibility Testing Less Dynamic UI components Across platform testing Testing with different carriers across various location User s interaction with the GUI Testing application i Test steps spanning across multiple test cases 19 Image Area Part 3: Tools and Best Practices 20 2011, Cognizant

Tool Types Mobile Testing Tools Remote Based Desktop Based Device Anywhere Perfecto Mobile Industry Based Squish FoneMonkey JamoSolutions Keynote Eggplant Open Source Robotium Selenium Robot Selenium 21 Image Area Part 3.1: Mobile Web Automation 22 2011, Cognizant

Mobile Web Automation Web Pages render differently on various mobile phone making Automation of Mobile Testing of Web Page Key to its success Automation Testing Approach User Agent Based Automation Testing Emulator / Device based Automation Testing Remote based Automation Testing utomation s Gather Requirement for Testing Classify the testing types Compliance End to End testing Compliance Testing Automated Testing tool to validate the content at every step of development Mobile Web A Steps Conduct Final verification testing on multiple Devices Conduct testing on emulators Decide on Automation tool Browser Simulation tool Emulator / Device Automation tools Cloud based automation tools 23 User Agent Based Automation Testing A User agent is a utility which comes as an add ons with any desktop browsers that makes the browser request and display mobile web pages. Test Automation tools like QTP or Selenium can be leverage for validating Mobile Web page displayed on Web Browser Web Server Pros Request as Mobile Phone User Agent Web Browser Web browser displays mobile website Automation Commands Automation Tool Automation Engine Response for Mobile Phone Reports Reports manager No Additional software required to be installed Automation is possible with existing automation tools like QTP, Selenium and so on Easy to incorporate in house frameworks f.or automation. Does not need mobile devices to run the tests Fidler BaydenUAPick Plugins in Firefox UA Switcher Custom Addon's Independent Addons Exact look and feel of the web application is not realized Issues that occur due to device browsers may not get captured Selenium QTP RFT Silk Test Automation Tools Cons 24

Emulator/ Device Based Automation Testing Approach The functional validation of any mobile application would normally be done on emulators/mobile devices. While it is highly recommended to test the end to end testing on mobile devices, emulators can be leveraged for initial sanity checks and also to a certain extent for functional validation. There are various automation tools available for validating the mobile application on both devices and emulators. Web Server Pros Request Emulator / Device Web Page Under Test Web Driver / Robot Response It is possible to do an end to end testing of the Application Test coverage can be highly increased. Highly reliable It is possible to automate lot of live scenarios. A good mix of emulators and devices is recommended if testing is exhaustive The initial environment set up needs to be done and it involves cost. Device specific issues cannot be captured using emulator based automation Automation Commands Automation Tool Automation Engine Reports Reports manager Tools Selenium Robot Selenium Supported Platforms ios and Android Cons 25 Image Area Part 3.2: Mobile Native / Hybrid Application Automation 2011, Cognizant 26

Native/Hybrid Application Automation Native and hybrid Applications are more rich applications and highly interactive applications. Automation Testing Appoach and Process are different for Native Application Emulator / Device based Automation Testing Automation Testing Approach Remote based Automation Testing omation Steps Gather Requirement for Testing Classify the testing types Perform POC for Application Automation Native App Aut Conduct Final verification testing on multiple Devices Conduct testing on emulators Decide on Automation tool Emulator / Device Automation tools Cloud based automation tools 27 Emulator/ Device Based Automation Testing Approach Native Application Automation would demand possible download from App server and installation of Mobile Applications. The Device Should have Automation agent Running in it. APP Server Pros Download and Install Applications Emulator / Device Application Under Test Automation Agent It is possible to do end to end testing of the Application Test coverage to a very high percentage Highly reliable It is possible to automate many automation tools are available. A good mix of emulators and devices is recommended if testing is exhaustive The initial environment set up needs to be done and it involves cost. Testing under various carrier networks is cumbersome. Automation Commands Automation Tool Automation Engine Reports Reports manager Automation Tools Robotium UI Automation Test Quest Jamo Solutions See Test Co ons 28

Cloud Based Agent s Automation Testing Approach Cloud based testing offers testing on real devices hosted in the cloud. It facilitates in validating a mobile application if it has to be done on a various mobile devices on a live carrier network. They also support automation and test management. Server side Lab Lab 1 Pros Lab2. Lab N Internet Client Side IDE / Test Tool Access to Large pool of devices Facilitates testing on live devices under live network Credible testing results Possible to test all modes of connectivity Highly increased test coverage Incorporates automation. Highly dependent on network Performance bottlenecks creep up Not possible to trouble shoot issues on devices and on the test environment Test Engine Test Data Manager Report Manager Cons Industry Test Management Tool Automation Tools Device Anywhere Perfecto Mobile 29 Image Area Part 3.3: Tool Selection and Best Practices 2011, Cognizant 30

Tool Selection Criteria Cost Benefit Analysis Scope based decisions Platforms support Supported Versions of platforms Types of automation supported. Device variants within a platforms ( form factors) Timelines for the project Feature based decisions Working on both simulator /device Integration to test management Ease of use and scripting support Regression Test Count & Complexity Infrastructural decisions Stability Dependency on mac/desktops Cloud based/stand alone 31 Best practices for Selecting the ideal Mobile Automation Tool 1. Always perform tool feasibility since mobile technologies and platforms are varied 2. Select tools that support both platform simulators and device as one could mix and match to optimizing runs on devices. 3. Also look for automation in non functional areas like interruption, hardware scenarios like battery state changes etc 4. Always optimize on the platform support, in some cases there could be a need for one or more tools to perform automation 5. Look for multiple devices support and versions support 6. Look for utility and reusable functions that would add value to automation 7. Always make sure the ROIs per platform and overall time 8. Look for avenues for early automation since most of mobile projects are also agile 9. Integrated execution with test management tool is going to be important for tool success 10. Look for data driven automation support as iterations in execution is going to increase coverage and ROI 11. Also look for failover and error handling mechanisms in the automation tools, since there is a lot of external interactions that could cause unexpected errors 32

Candidates for Automation 1. Identify regression test cases 2. Classify test cases according to Automation tool ability 3. Identify complex applications business logic 4. Identify test cases that are complex in creation and maintenance 5. Look for test cases that are redundant in nature 6. Identify test case flow that can be accommodated across multiple mobile platforms. 7. Time consuming manual test cases that can be effective when automated 8. Test cases that can run unattended with little / no manual intervention 9. Identify test cases based on the automation technique of mobile automation tools 33 Best Practices for Automation Organize the test assets i.e. test objects, test tdt data, procedures / functions and test scripts Use Re Usable components within various scripts Data drive the test scripts to reduce script creation and execution time Identify Re usable components within organized objects, procedures and functions Use Re usable components across platforms 34

Best Practices for Automation Perform POC on critical platforms to narrow down to a tool/tool set One tool may not solve cross platform automation goals be open for more than one tool While evaluating tools for Automation, also evaluate them for integration with Test management tools Best Practices Identify reusable scenarios across platforms and group them. This facilitates creation of appropriate framework to save time For Native Apps, choose critical test cases that are going to be run across releases as candidates for automation Always keep in mind different form factors while determining test coverage, especially for Mobile Web. Factor the different connectivity aspects for automation execution runs 35 Image Area Part 4: Best in Class Frameworks 36 2011, Cognizant

iphone Automation Framework Approach One of the more useful (from a developer standpoint) features coming in ios 4 is the UI Automation tool. This enhances to run an automated set of tests against an application, and test to see if they had the expected results. Architecture Features Tune up UI Automation Assertion Test Script Imports tune up Instrument UI Automation Script can be easily executed on real device and simulator Ease of Script using JavaScript Pre-defined Reusable Functions Ability to perform UI level automation on iphone applications iphone Key Benefits Collection of JavaScript library functions Eases the test script creation Easy to install and use Improves reusability 37 37 Android Framework Approach One of the more useful (from a developer standpoint) features coming is the UI Automation tool. This enhances to run an automated set of tests against an application, and test to see if they had the expected results. Architecture Robotium Implement Android Instrumentation Testing Features Robotium implements Activity Instrumentation of Android Testing Framework in a simple manner similar to Selenium Android Junit Eclipse Robotium Test Scripts Application Under Test Instrumentation Test Runner using adb (Non-eclipse) The test script is a java file which implements roboitum s class solo The test scripts can be run on actual device or emulator using Android Junit Framework in eclipse platforms Device Emulator It can also be run using the Instrumentation test runner through adb Key Benefits Offers additional functions which are not present in Activity testing It is open source and easy to develop scripts. Improves test productivity, and can be executed on device and Emulators. 38 38

Image Area Part 4.1: Industry Tools 39 2011, Cognizant Mobile Test Tools in Market Tools/ Parameters Test Quest Countdown Device Anywhere Pro Squish Jamo Solutions Perfecto Mobile Robotium Eggplant Support of devices/platform s Android, BlackBerry, Brew MP, Symbian and Windows Phone Android, BlackBerry, Brew MP, Symbian, Windows Phone and Apple iphone and ipad. Squish is a general GUI testing tool Android, Windows Mobile, Windows CE. iphone, IOS, Blackberry, Android,Windows Mobile and Symbian. Android Android, iphone, Symbian,Wind ows Mobile, Blackberry Licensing Cost Cost Cost Cost Cost OpenSource cost Ease Of Usage Easy to use Easy to use Scripting No Scripting Scripting Possible Test Data Parameterization Needs programmin g Uses JavaScript, Python, Perl or TCL Easy to use. Uses VB script. Easy to use. It uses no programming language for scripts, script is very simple and can be easily understood Needs programming Uses java. Easy to use. Uses 'Sensetalk' Not available Possible Available Available Not Possible Possible Remote Connectivity Possible Possible Possible Possible Not Possible Not Possible Possible Integration with test management In-built test management tool test manager Quality Centre Quality Centre, Cruise control Quality Centre and any other test management tool supported by QTP Possible Not Possible Not Possible 40

Device Anywhere Mobile Application Testing. Any Device. Any Platform. Anywhere. Device Anywhere provides testers access to more than 3,500 Mobile handsets via the Internet for remote testing. Virtual Test Lab with real devices hosted Available for usage 24x7x365 in live network Shared across distributed teams Real time access to Mobile networks Screen by screen phone activity capture Automation testing feasibility Test Case Manager tool helps QA teams to define test plans and create customized test reports 41 Device Anywhere Advantages User Friendly User gets access to many devices Users can share a device We can test real mobiles Device Anywhere Disadvantages: Cost involved Perfecto Mobile Perfecto Mobile is provider of Remote Access and Automated testing solutions for Mobile devices. Currently it support the following platforms iphone, Android, Windows Mobile, Symbian, Blackberry, Droid Web Access & Remote control Automation Across Multiple Device The Perfecto Mobile Handset Cloud service enables you to test your Mobile applications, websites or services on a multitude of REAL handsets. The service enables you to access real Mobile devices via the web and control them as if you were holding them in your hands. Test Automation enables you to extend your testing coverage, shorten your testing cycles and replace repetitive and time consuming manual work. 42

Image Area Part 4.2: Cognizant s Mobile Automation Testing Frameworks 43 2011, Cognizant Cognizant s Mobile Test Automation Framework Benefits 1. Reusability of scripts is maintained. 2. Speed-up Test execution which reduces time. 3. Higher Reproducibility for errors through automated testing. 4. Ease to maintain the portability of scripts across device. 5. Less manual interception, hence less error prone which gives higher ROI. 44

Typical Mobile Application Testing Framework Backend Middleware Device UI tion layers Types of Testing Applica Enterprise Data Application Data Integration testing Mobile Web Services SOA Testing Integration testing Admin Services Communication Framework/ Server Device Mgmt testing Security testing Authentication testing Mobile Client Mobile Website Installation Testing Compatibility testing UI Testing Functional Testing Device profiling Interruption Fully Automatable Partially Automatable Not Automatable Our Tools to accelerate testing process 45 45 Framework Integrated Testing for Mobile Web APPs Testing of Mobile Web Applications Automation approach for testing mobile web apps using Selenium The browser simulation tools like BaydenUA Pick, Fiddler, and User Agent Switcher etc can be used to simulate the mobile browser experience on IE, Mozilla Firefox, to render web sites as it would appear on mobile devices The Selenium IDE can be used to record scripts and export the code to java, ruby, python or c#. The exported code can now be used with Selenium RC, where the scripts can be modified according to the needs and can be run against any browser. The approach makes use of the in-house CRAFT framework where the Business flows are driven through excel sheets, Selenium Core Selenium Core using keywords. Key Benefits Using add-ons like UAPick, Fiddler, Bayden UA, set the User Agents specific to devices to render web pages accordingly. Remote Control Server This is a very effective method for testing mobile web apps, since it doesn t use any simulators or real devices. It just uses the desktop browser and the open source tool Selenium, using which we can easily test the functionality of web applications. Makes efficient use of the home-grown CRAFT framework. Java, Ruby, Python, Perl, PHP or.net 46 46

Cognizant Mobile Testing Tools CSMartPro CSMartPro is an Cross Platform Automation tool for Graphical User Interface based functional testing M Jammer Cognizant s Mobile Interrupt Simulating Tool, can be used for testing the AUT when the mobile application is stressed with multiple interrupts M TestLocale M TestLocale overrides the GPS on User Location, thus enabling Location Based Service Applications to be tested in a Smart fashion M WebChecker A desktop tool which would check the compatibility of web pages for different mobile devices in accordance with W3C standards 47