Introduction to Mobile 
Automation 
Presenter: Sitam Jana, Mindfire Solutions
About Me 
Sitam Jana, Software QA Engineer 
Mindfire Solutions 
Skills : WebDriver, Java, JUnit, TestNG, Maven, Oracle 11G, Robotium, Appium, MonkeyRunner 
Certifications : ISTQB Foundation Level, V-Skills Selenium Certified 
Connect Me : 
Facebook : https://www.facebook.com/sitam.jana.9 
LinkedIn : http://www.linkedin.com/pub/sitam-jana/39/444/b12 
Contact Me : 
Email : sitamj@mindfiresolutions.com / sitamjana@gmail.com 
Skype: mfsi_sitamj 
Presenter: Sitam Jana, Mindfire Solutions
Agenda 
 Mobile Application Testing - Brief Discussion 
 Challenges of testing mobile application 
 Mobile Automation - What is it? 
 Tools available in the market 
 Getting started 
 Demo 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Application Testing 
Mobile devices have seen tremendous growth over the past decade. With lots of 
Mobile applications being developed these days, confirming quality has 
become so key to prevent revenue loss, lost productivity and damage to brand 
reputation. A thorough test strategy needs to follow in order to get apps in good 
shape, reach market on time, within budget and to work well across devices, OS 
Distributions : 
 Target Device Selection (Test environment should have a mix of Simulators 
and Real devices) 
 Internet Connectivity (Wi-Fi, Cellular) 
 Test Automation (Reduce effort of Regression by selecting an effective 
automation tool) 
 Different testing aspects (Usability, Performance, Security, Reliability etc.) 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Application Testing 
Compatibility 
Application's compatibility with 
different computing environments 
(hardware peripherals, carriers, 
emulators, screen resolutions etc.) 
Presenter: Sitam Jana, Mindfire Solutions 
Interoperability 
Ability to interact with other system 
(File transfer, sharing, remote 
access etc.)
Challenges 
 Compatibility Testing 
- Testing across Mobile devices (Emulators, Real devices etc.) 
- Testing across OS flavors (Android, iOS, Windows etc.) 
- Testing across networks (Wi-Fi, Cellular etc.) 
- Testing across different Resolutions, Screen sizes 
 Regression Testing 
Before moving updates to Production, doing thorough Regression testing is 
very crucial. Automation is MUST here to reduce efforts, 
time to market and enhance productivity. 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation 
Automation of mobile applications is one of MOST emerging prospect in todays 
Agile world and can provide many advantages: 
 Effieciency of testing process improve as Automation is accurate and work as 
designed 
 Automation tests can be run repeatedly and consistently 
 Remove headache of Regression tests with every release 
 Improved test coverage in shorter time span 
 Resources can be utilized better with Regression being done by Automation and 
advanced testing done by Human QA 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
Key factors in selecting right Mobile automation tools 
 Support for multiple platforms 
List current and future target platforms and ensure tool supports them. 
 Support for blackbox testing 
Ensure tool functions well without having access to application source code 
 Root or Jailbreak requirement 
Tool should work well across device which has not been rooted or jail broken 
 Support for Integration into CI Servers 
Automation Scripts should be able to run from CI servers 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
 Platform Specific Tools (Provided by Mobile OS vendors) 
iOS Instrumentation, MonkeyRunner, UIAutomator 
 Functional Testing Tools 
Robotium, Appium, MonkeyTalk, Selendroid, ios-driver 
 Unit Testing Tools 
Android JUnit, Roboelectric, OCUnit 
 Performance Testing Tools 
NeoLoad, MobiTest 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
iOS Instrumentation 
Developer tool to interact with running processes in iOS and collect data. 
Developed by: Apple Inc. 
Features: 
- Track Keyboard and Mouse events 
- Measure File I/O activity 
- Analyze CPU usage 
- Memory utilization 
- Track Network traffic 
More Info: iOS Instrumentation User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
MonkeyRunner 
Emulates Android emulators and real devices. 
Developed by: Google Inc. 
Features: 
- Multiple Device Control 
- Can install or uninstall application packages 
- Can capture screen shot of Android device 
- Functional and Regression testing can be done for Android apps 
More Info: MonkeyRunner User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
UI Automator 
Test UI of Android mobile applications across one or multiple devices. 
Developed by: Google Inc. 
Features: 
- Multiple Device Control 
- Emulate Key events, gestures and screen actions 
- Come Pre-installed with Android SDK 
- Multiple applications can be accessed 
More Info: UI Automator User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
Robotium 
Android test automation framework developed by Renas Rada and provide full 
support for Native and Hybrid applications. 
Developed by: Robotium Tech 
Features: 
- Can handle multiple Android activities automatically 
- Support for Black-box and White-box test automation 
- Smooth integration with CI servers like Hudson, Jenkins etc. 
- Can be implemented as Maven, ANT etc. 
More Info: Robotium User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
Appium 
Open source test automation framework to drive native and hybrid mobile 
Applications for both Android and iOS. 
Developed by: Sauce Labs 
Features: 
- Can drive both Android and iOS applications 
- Use Selenium bindings to write tests 
- Smooth integration with CI servers like Hudson, Jenkins etc. 
- Can be implemented as Maven, ANT etc. 
More Info: Appium User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Mobile Automation Tools 
MonkeyTalk 
Open source test automation framework to drive native and hybrid mobile 
Applications, web and Flash applications. 
Developed by: Gorilla Logic 
Features: 
- Can drive both Android and iOS applications 
- Provide Record and Playback tool 
- Smooth integration with CI servers like Hudson, Jenkins etc. 
- Smooth integrations with Cloud servers like Cloud Monkey 
More Info: MonkeyTalk User Guide 
Presenter: Sitam Jana, Mindfire Solutions
Getting Started – Android Automation 
Set up Working Environment 
 Install JDK 
http://www.oracle.com/technetwork/java/javase/downloads/index.html 
 Download Android SDK 
http://developer.android.com/sdk/index.html 
 Setting up Android Virtual Device (Emulator) 
Create new AVD from Android SDK to be able to run Automation tests there. 
 Resign Android application (If needed) and Install under AVD 
Some of the Automation tools require AUT to be resigned in order to communicate. 
 Write Automation scripts and execute them under AVD 
Presenter: Sitam Jana, Mindfire Solutions
Demo - MonkeyRunner 
MonkeyRunner API 
MonkeyRunner API contains 3 modules: 
 MonkeyRunner 
Connects MonkeyRunner to emulator or real device 
 MonkeyDevice 
Represents a Device or emulator. Can install/uninstall application packages, start activity, 
emulate keyboard, touch events. 
 MonkeyImage 
Represents a screen capture image. Capture screen shots, convert bitmap images to various 
formats, write an image to a file, compare two MonkeyImage objects. 
Presenter: Sitam Jana, Mindfire Solutions
MonkeyRunner Sample Code 
# Imports the monkey runner modules used by this program 
from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice 
from com.android.monkeyrunner.easy import EasyMonkeyDevice 
from com.android.monkeyrunner.easy import By 
# Connects to the current device, returning a MonkeyDevice object 
device = MonkeyRunner.waitForConnection() 
# Install the application package to the device 
device.installPackage('<Path to apk file>') 
# Run the activity on the device 
device.startActivity(component=runComponent) 
# Use the EasyMonkey API 
easyDevice = EasyMonkeyDevice(device) 
Presenter: Sitam Jana, Mindfire Solutions
MonkeyRunner Sample Code 
# Input values into Text box 
textBox = By.id('<textBox ID>') 
easyDevice.type(login, '<text to input>') 
# Press keys 
device.press('<Key name e.g DEL>', MonkeyDevice.DOWN_AND_UP) 
# Click on button 
button = By.id('<button ID>') 
easyDevice.touch(button, MonkeyDevice.DOWN_AND_UP) 
# Take screenshot and writes the screenshot to a file 
TakeScreenshot('<Screenshot destination>', device) 
Presenter: Sitam Jana, Mindfire Solutions
MonkeyRunner – How it works 
 Create a PyDev project under Eclipse 
Need to install PyDev Eclipse plug-in 
 Set Jython Interpreter Preferences for MonkeyRunner 
From Window → Preferences → Interpreter – Jython 
Create New Jython Interpreter: 
Interpreter Name: Give any name e.g. MonkeyRunner 
Interpreter Executable: Locate Jython utility (adt-bundle-windows-x86_ 
64sdktoolslibjython-standalone-x.x.x.jar) 
Create New Libraries for MonkeyRunner: 
Click on 'New Jar/Zip(s)' button and locate MonkeyRunner utility (adt-bundle-windows-x86_ 
64sdktoolslibmonkeyrunner.jar) 
Presenter: Sitam Jana, Mindfire Solutions
MonkeyRunner – How it works 
 Set Project to use configured MonkeyRunner Jython Interpreter 
Right click on Project → Properties → PyDev Interpreter/Grammar 
Project type: Jython 
Interpreter: Select new Interpreter created for MonkeyRunner 
 Create an External Tool Configuration 
From Run → External Tools → External Tools Configurations → New Launch Configuration 
Name: Give any name 
Location: Point MonkeyRunner.bat file (adt-bundle-windows-x86_ 
64sdktoolsmonkeyrunner.bat) 
Working Directory: Browse Workspace and select PyDev project created 
Arguments: Provide full path to the python program (.py) file 
Presenter: Sitam Jana, Mindfire Solutions
Presenter: Sitam Jana, Mindfire Solutions 
References 
 HSC Whitepaper Mobile Test Automation 
 Mobility Whitepaper Mobile Application Testing.pdf 
 Selecting the Right Mobile Test Automation Strategy Challenges and Principles
Question and 
Answer 
Presenter: Sitam Jana, Mindfire Solutions
Thank you 
Presenter: Sitam Jana, Mindfire Solutions
www.mindfiresolutions.com 
https://www.facebook.com/MindfireSolutions 
http://www.linkedin.com/company/mindfire-solutions 
http://twitter.com/mindfires

More Related Content

PPTX
Mobile Automation with Appium
PPTX
Appium overview
PPTX
Appium ppt
PDF
Getting started with appium
PDF
Appium: Automation for Mobile Apps
PPTX
Automation With Appium
PPT
PPTX
Automation testing on ios platform using appium
Mobile Automation with Appium
Appium overview
Appium ppt
Getting started with appium
Appium: Automation for Mobile Apps
Automation With Appium
Automation testing on ios platform using appium

What's hot (20)

PPTX
Mobile application testing
PPTX
Automation - web testing with selenium
PDF
Appium basics
PPTX
Mobile application testing tutorial
PPTX
Automation Testing With Appium
PPT
Android & iOS Automation Using Appium
PPT
Automated Web Testing Using Selenium
PPT
Selenium Concepts
PPT
PPTX
Selenium WebDriver training
PDF
Cypress testing
PPTX
Mobile Application Testing Training Presentation
ODP
API Testing With Katalon Studio
PPT
Mobile Application Testing Strategy
PPTX
Selenium test automation
PDF
Mobile App Testing Strategy by RapidValue Solutions
PDF
Web automation using selenium.ppt
PPT
Selenium Presentation at Engineering Colleges
PPTX
Test automation using selenium
PPTX
Mobile App Testing Strategy
Mobile application testing
Automation - web testing with selenium
Appium basics
Mobile application testing tutorial
Automation Testing With Appium
Android & iOS Automation Using Appium
Automated Web Testing Using Selenium
Selenium Concepts
Selenium WebDriver training
Cypress testing
Mobile Application Testing Training Presentation
API Testing With Katalon Studio
Mobile Application Testing Strategy
Selenium test automation
Mobile App Testing Strategy by RapidValue Solutions
Web automation using selenium.ppt
Selenium Presentation at Engineering Colleges
Test automation using selenium
Mobile App Testing Strategy
Ad

Viewers also liked (10)

PPTX
18 contoh katalog dan buklet dengan desain inspiratif
PDF
Android Lecture #04 @PRO&BSC Inc.
PDF
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
PPTX
Explore Security Testing
PPTX
Monkey runner & Monkey testing
DOCX
Selenium Testing Project report
PDF
Introduction to Test Automation - Technology and Tools
PDF
Patterns in Test Automation
PDF
Mobile application testing report
PPT
Test Automation Framework Designs
18 contoh katalog dan buklet dengan desain inspiratif
Android Lecture #04 @PRO&BSC Inc.
NDC 2013 Monkeyrunner를 이용한 모바일 테스트 자동화
Explore Security Testing
Monkey runner & Monkey testing
Selenium Testing Project report
Introduction to Test Automation - Technology and Tools
Patterns in Test Automation
Mobile application testing report
Test Automation Framework Designs
Ad

Similar to Introduction To Mobile-Automation (20)

PPTX
SeeTestAutomation - Mobile Test Automation Tool by Experitest
PPT
mohit anand
PPTX
Automation Proposal_V1.0
PDF
Mobile Automation Framework (MAF).
PDF
Best Mobile Automation Testing Tools & Frameworks.pdf
PPTX
Mobile Application Testing
PPTX
Mobile Application Testing
PPTX
Appium - test automation for mobile apps
PDF
Test Automation for Mobile Applications
PPTX
When & How to Successfully use Test Automation for Mobile Applications
PDF
AnDevCon: Building Automated Android App Tests
PDF
Top 12 challenges in Mobile Testing
PDF
2012 java one-con3648
PDF
Mobile test automation overview & tools evaluation
PDF
Automating Mobile Applications
PPT
Android automation tools
PDF
Mobile automated testing_erank
PDF
Sub setmobile testing_erank
PPTX
Learning's from mobile testing
PPT
Mobile applications and automation testing
SeeTestAutomation - Mobile Test Automation Tool by Experitest
mohit anand
Automation Proposal_V1.0
Mobile Automation Framework (MAF).
Best Mobile Automation Testing Tools & Frameworks.pdf
Mobile Application Testing
Mobile Application Testing
Appium - test automation for mobile apps
Test Automation for Mobile Applications
When & How to Successfully use Test Automation for Mobile Applications
AnDevCon: Building Automated Android App Tests
Top 12 challenges in Mobile Testing
2012 java one-con3648
Mobile test automation overview & tools evaluation
Automating Mobile Applications
Android automation tools
Mobile automated testing_erank
Sub setmobile testing_erank
Learning's from mobile testing
Mobile applications and automation testing

More from Mindfire Solutions (20)

PDF
Physician Search and Review
PDF
diet management app
PDF
Business Technology Solution
PDF
Remote Health Monitoring
PDF
Influencer Marketing Solution
PPT
High Availability of Azure Applications
PPTX
IOT Hands On
PPTX
Glimpse of Loops Vs Set
ODP
Oracle Sql Developer-Getting Started
PPT
Adaptive Layout In iOS 8
PPT
Introduction to Auto-layout : iOS/Mac
PPT
LINQPad - utility Tool
PPT
Get started with watch kit development
PPTX
Swift vs Objective-C
ODP
Material Design in Android
ODP
Introduction to OData
PPT
Ext js Part 2- MVC
PPT
ExtJs Basic Part-1
PPT
Spring Security Introduction
Physician Search and Review
diet management app
Business Technology Solution
Remote Health Monitoring
Influencer Marketing Solution
High Availability of Azure Applications
IOT Hands On
Glimpse of Loops Vs Set
Oracle Sql Developer-Getting Started
Adaptive Layout In iOS 8
Introduction to Auto-layout : iOS/Mac
LINQPad - utility Tool
Get started with watch kit development
Swift vs Objective-C
Material Design in Android
Introduction to OData
Ext js Part 2- MVC
ExtJs Basic Part-1
Spring Security Introduction

Recently uploaded (20)

PPTX
StacksandQueuesCLASS 12 COMPUTER SCIENCE.pptx
PPT
chapter01_java_programming_object_oriented
PDF
C language slides for c programming book by ANSI
PPTX
ESDS_SAP Application Cloud Offerings.pptx
PDF
Mobile App for Guard Tour and Reporting.pdf
PPTX
Lesson-3-Operation-System-Support.pptx-I
PDF
Multiverse AI Review 2025_ The Ultimate All-in-One AI Platform.pdf
PDF
Ragic Data Security Overview: Certifications, Compliance, and Network Safegua...
PDF
How to Set Realistic Project Milestones and Deadlines
PDF
OpenColorIO Virtual Town Hall - August 2025
PDF
SBOM Document Quality Guide - OpenChain SBOM Study Group
PPTX
MCP empowers AI Agents from Zero to Production
PDF
Difference Between Website and Web Application.pdf
PDF
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
PPTX
Presentation - Summer Internship at Samatrix.io_template_2.pptx
PPTX
Hexagone difital twin solution in the desgining
PPTX
oracle_ebs_12.2_project_cutoveroutage.pptx
PDF
IObit Driver Booster Pro Crack Latest Version Download
PPTX
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
PPTX
Independent Consultants’ Biggest Challenges in ERP Projects – and How Apagen ...
StacksandQueuesCLASS 12 COMPUTER SCIENCE.pptx
chapter01_java_programming_object_oriented
C language slides for c programming book by ANSI
ESDS_SAP Application Cloud Offerings.pptx
Mobile App for Guard Tour and Reporting.pdf
Lesson-3-Operation-System-Support.pptx-I
Multiverse AI Review 2025_ The Ultimate All-in-One AI Platform.pdf
Ragic Data Security Overview: Certifications, Compliance, and Network Safegua...
How to Set Realistic Project Milestones and Deadlines
OpenColorIO Virtual Town Hall - August 2025
SBOM Document Quality Guide - OpenChain SBOM Study Group
MCP empowers AI Agents from Zero to Production
Difference Between Website and Web Application.pdf
Streamlining Project Management in Microsoft Project, Planner, and Teams with...
Presentation - Summer Internship at Samatrix.io_template_2.pptx
Hexagone difital twin solution in the desgining
oracle_ebs_12.2_project_cutoveroutage.pptx
IObit Driver Booster Pro Crack Latest Version Download
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
Independent Consultants’ Biggest Challenges in ERP Projects – and How Apagen ...

Introduction To Mobile-Automation

  • 1. Introduction to Mobile Automation Presenter: Sitam Jana, Mindfire Solutions
  • 2. About Me Sitam Jana, Software QA Engineer Mindfire Solutions Skills : WebDriver, Java, JUnit, TestNG, Maven, Oracle 11G, Robotium, Appium, MonkeyRunner Certifications : ISTQB Foundation Level, V-Skills Selenium Certified Connect Me : Facebook : https://www.facebook.com/sitam.jana.9 LinkedIn : http://www.linkedin.com/pub/sitam-jana/39/444/b12 Contact Me : Email : [email protected] / [email protected] Skype: mfsi_sitamj Presenter: Sitam Jana, Mindfire Solutions
  • 3. Agenda  Mobile Application Testing - Brief Discussion  Challenges of testing mobile application  Mobile Automation - What is it?  Tools available in the market  Getting started  Demo Presenter: Sitam Jana, Mindfire Solutions
  • 4. Mobile Application Testing Mobile devices have seen tremendous growth over the past decade. With lots of Mobile applications being developed these days, confirming quality has become so key to prevent revenue loss, lost productivity and damage to brand reputation. A thorough test strategy needs to follow in order to get apps in good shape, reach market on time, within budget and to work well across devices, OS Distributions :  Target Device Selection (Test environment should have a mix of Simulators and Real devices)  Internet Connectivity (Wi-Fi, Cellular)  Test Automation (Reduce effort of Regression by selecting an effective automation tool)  Different testing aspects (Usability, Performance, Security, Reliability etc.) Presenter: Sitam Jana, Mindfire Solutions
  • 5. Mobile Application Testing Compatibility Application's compatibility with different computing environments (hardware peripherals, carriers, emulators, screen resolutions etc.) Presenter: Sitam Jana, Mindfire Solutions Interoperability Ability to interact with other system (File transfer, sharing, remote access etc.)
  • 6. Challenges  Compatibility Testing - Testing across Mobile devices (Emulators, Real devices etc.) - Testing across OS flavors (Android, iOS, Windows etc.) - Testing across networks (Wi-Fi, Cellular etc.) - Testing across different Resolutions, Screen sizes  Regression Testing Before moving updates to Production, doing thorough Regression testing is very crucial. Automation is MUST here to reduce efforts, time to market and enhance productivity. Presenter: Sitam Jana, Mindfire Solutions
  • 7. Mobile Automation Automation of mobile applications is one of MOST emerging prospect in todays Agile world and can provide many advantages:  Effieciency of testing process improve as Automation is accurate and work as designed  Automation tests can be run repeatedly and consistently  Remove headache of Regression tests with every release  Improved test coverage in shorter time span  Resources can be utilized better with Regression being done by Automation and advanced testing done by Human QA Presenter: Sitam Jana, Mindfire Solutions
  • 8. Mobile Automation Tools Key factors in selecting right Mobile automation tools  Support for multiple platforms List current and future target platforms and ensure tool supports them.  Support for blackbox testing Ensure tool functions well without having access to application source code  Root or Jailbreak requirement Tool should work well across device which has not been rooted or jail broken  Support for Integration into CI Servers Automation Scripts should be able to run from CI servers Presenter: Sitam Jana, Mindfire Solutions
  • 9. Mobile Automation Tools  Platform Specific Tools (Provided by Mobile OS vendors) iOS Instrumentation, MonkeyRunner, UIAutomator  Functional Testing Tools Robotium, Appium, MonkeyTalk, Selendroid, ios-driver  Unit Testing Tools Android JUnit, Roboelectric, OCUnit  Performance Testing Tools NeoLoad, MobiTest Presenter: Sitam Jana, Mindfire Solutions
  • 10. Mobile Automation Tools iOS Instrumentation Developer tool to interact with running processes in iOS and collect data. Developed by: Apple Inc. Features: - Track Keyboard and Mouse events - Measure File I/O activity - Analyze CPU usage - Memory utilization - Track Network traffic More Info: iOS Instrumentation User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 11. Mobile Automation Tools MonkeyRunner Emulates Android emulators and real devices. Developed by: Google Inc. Features: - Multiple Device Control - Can install or uninstall application packages - Can capture screen shot of Android device - Functional and Regression testing can be done for Android apps More Info: MonkeyRunner User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 12. Mobile Automation Tools UI Automator Test UI of Android mobile applications across one or multiple devices. Developed by: Google Inc. Features: - Multiple Device Control - Emulate Key events, gestures and screen actions - Come Pre-installed with Android SDK - Multiple applications can be accessed More Info: UI Automator User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 13. Mobile Automation Tools Robotium Android test automation framework developed by Renas Rada and provide full support for Native and Hybrid applications. Developed by: Robotium Tech Features: - Can handle multiple Android activities automatically - Support for Black-box and White-box test automation - Smooth integration with CI servers like Hudson, Jenkins etc. - Can be implemented as Maven, ANT etc. More Info: Robotium User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 14. Mobile Automation Tools Appium Open source test automation framework to drive native and hybrid mobile Applications for both Android and iOS. Developed by: Sauce Labs Features: - Can drive both Android and iOS applications - Use Selenium bindings to write tests - Smooth integration with CI servers like Hudson, Jenkins etc. - Can be implemented as Maven, ANT etc. More Info: Appium User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 15. Mobile Automation Tools MonkeyTalk Open source test automation framework to drive native and hybrid mobile Applications, web and Flash applications. Developed by: Gorilla Logic Features: - Can drive both Android and iOS applications - Provide Record and Playback tool - Smooth integration with CI servers like Hudson, Jenkins etc. - Smooth integrations with Cloud servers like Cloud Monkey More Info: MonkeyTalk User Guide Presenter: Sitam Jana, Mindfire Solutions
  • 16. Getting Started – Android Automation Set up Working Environment  Install JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html  Download Android SDK http://developer.android.com/sdk/index.html  Setting up Android Virtual Device (Emulator) Create new AVD from Android SDK to be able to run Automation tests there.  Resign Android application (If needed) and Install under AVD Some of the Automation tools require AUT to be resigned in order to communicate.  Write Automation scripts and execute them under AVD Presenter: Sitam Jana, Mindfire Solutions
  • 17. Demo - MonkeyRunner MonkeyRunner API MonkeyRunner API contains 3 modules:  MonkeyRunner Connects MonkeyRunner to emulator or real device  MonkeyDevice Represents a Device or emulator. Can install/uninstall application packages, start activity, emulate keyboard, touch events.  MonkeyImage Represents a screen capture image. Capture screen shots, convert bitmap images to various formats, write an image to a file, compare two MonkeyImage objects. Presenter: Sitam Jana, Mindfire Solutions
  • 18. MonkeyRunner Sample Code # Imports the monkey runner modules used by this program from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice from com.android.monkeyrunner.easy import EasyMonkeyDevice from com.android.monkeyrunner.easy import By # Connects to the current device, returning a MonkeyDevice object device = MonkeyRunner.waitForConnection() # Install the application package to the device device.installPackage('<Path to apk file>') # Run the activity on the device device.startActivity(component=runComponent) # Use the EasyMonkey API easyDevice = EasyMonkeyDevice(device) Presenter: Sitam Jana, Mindfire Solutions
  • 19. MonkeyRunner Sample Code # Input values into Text box textBox = By.id('<textBox ID>') easyDevice.type(login, '<text to input>') # Press keys device.press('<Key name e.g DEL>', MonkeyDevice.DOWN_AND_UP) # Click on button button = By.id('<button ID>') easyDevice.touch(button, MonkeyDevice.DOWN_AND_UP) # Take screenshot and writes the screenshot to a file TakeScreenshot('<Screenshot destination>', device) Presenter: Sitam Jana, Mindfire Solutions
  • 20. MonkeyRunner – How it works  Create a PyDev project under Eclipse Need to install PyDev Eclipse plug-in  Set Jython Interpreter Preferences for MonkeyRunner From Window → Preferences → Interpreter – Jython Create New Jython Interpreter: Interpreter Name: Give any name e.g. MonkeyRunner Interpreter Executable: Locate Jython utility (adt-bundle-windows-x86_ 64sdktoolslibjython-standalone-x.x.x.jar) Create New Libraries for MonkeyRunner: Click on 'New Jar/Zip(s)' button and locate MonkeyRunner utility (adt-bundle-windows-x86_ 64sdktoolslibmonkeyrunner.jar) Presenter: Sitam Jana, Mindfire Solutions
  • 21. MonkeyRunner – How it works  Set Project to use configured MonkeyRunner Jython Interpreter Right click on Project → Properties → PyDev Interpreter/Grammar Project type: Jython Interpreter: Select new Interpreter created for MonkeyRunner  Create an External Tool Configuration From Run → External Tools → External Tools Configurations → New Launch Configuration Name: Give any name Location: Point MonkeyRunner.bat file (adt-bundle-windows-x86_ 64sdktoolsmonkeyrunner.bat) Working Directory: Browse Workspace and select PyDev project created Arguments: Provide full path to the python program (.py) file Presenter: Sitam Jana, Mindfire Solutions
  • 22. Presenter: Sitam Jana, Mindfire Solutions References  HSC Whitepaper Mobile Test Automation  Mobility Whitepaper Mobile Application Testing.pdf  Selecting the Right Mobile Test Automation Strategy Challenges and Principles
  • 23. Question and Answer Presenter: Sitam Jana, Mindfire Solutions
  • 24. Thank you Presenter: Sitam Jana, Mindfire Solutions