SlideShare a Scribd company logo
1 of 21
Mobile Automation Testing Using APPIUM
Created By: Keshav Kashyap
Agenda:-
 What is Mobile Automation?
 How to Setup Android SDK?
 Install and Un-install Application using CMD
 How to get App Properties?
 How to Use Appium?
 How to program in Eclipse using Appium?
 What are Desired Capabilities?
 How to find elements in Mobile App using UI Automator?
 Sample Program and Demo
 Limitations of Appium
What is Mobile Automation?

Mobile Automated testing provides a mechanism to
consistently repeat a test procedure and verify application
results. It can be effective both for regression testing as
well during development.

Testing mobile applications is different and more
complex than testing traditional desktop and web
applications.

Mobile applications need to be tested on a variety of
software platforms and versions, on diverse hardware and
form factors, and under different network connectivity
conditions.

Moreover, the rapid pace of mobile OS updates, the
frequent introduction of new devices and the customer
expectation of quick upgrades require additional test
cycles
Challenges in Mobile Automation Testing :-
Two Key Challenges in Mobile Application Test Automation
Mobile Platforms and Technology Coverage
The primary factor that determines an automation tool’s success is its ability to
work across platforms and technology stacks. The following challenges influence
automation success:
Device Diversity:
Multiple platforms and browsers.
Rendering differences.
Mobile devices with varied application run times.
Network Challenges:
•Multiple network types (e.g., GSM/GPRS/Wi-Fi/Wi-Max).
•Different speeds of connectivity across geographies.
•Multiple network operators with customized network features.
Hardware Challenges:
•Limitations in processing speed.
•Limitations of mobile memory size.
Pre-Requisites for Mobile Automation :-
• Eclipse should be installed
• Android SDK and APIs for recent versions of
Android
• Selenium Webdriver knowledge.
• Java knowledge.
• Basic Knowledge of Mobile.
Setup :-

Download Selenium Java zip archive and extract all the
files in a folder called Selenium.

Download Appium for Windows zip archive and extract
all files in a folder called Appium.

Download Appium Java client jar

Create a new java project in Eclipse and add Selenium and
Appium Java client Jar files
How to Setup Android SDK?
 Install and Setup JAVA
 Setup Java Path in Environment Variables.
 Setup Path in User Variable
 Setup JAVA_HOME in User Variable
C:Program FilesJavajdk1.7.0bin;
 Check that whether Java is installed on your system or not.
 Open cmd  type Java -version  Output will provide the installed version of
Java
 Install Android SDK OR Just Copy SDK folder shared by anyone.
If you don’t have SDK folder then you have to just click on the above installer_r16-
windows.exe. By default it will be installed in C:Program FilesAndroid. You have to
just copy the folder and paste it to some other drive. E.g.:- D:SDK
 Now setup ANDROID_HOME
 Setup Tools and Platform Tools Path in User Variable
 Restart the system (Strongly Recommended)
Install and Un-install Application using CMD
Install an App :-
adb install full_path_of_apk
adb install C:UsersTTNDDownloadsteamchat.apk
Un-Install an App :-
adb uninstall package_name_of_apk
adb uninstall com.famelive
How to get App Properties:-
• For app properties we have to use
command:-
D:SDKbuild-tools22.0.1aapt.exe dump
badging app_name.apk
What is Appium?:-
Appium is an Open source , Cross Platform test
automation tool for mobile apps
Hosted with GitHub
 Maintained by Dan Cuellar, Jonathan Lipps and
a number of other contributors
Supports automation of Native , Hybrid and
Mobile Web apps
Based on WebDriver JSON wire protocol
Based on Client-Server Architecture
Appium Server written in Node.js
Appium Architecture:-
How to Use or Run Appium?:-
Go to the Appium folder you downloaded earlier and run Appium.exe.
Click on General Settings button (second button) and verify URL you defined
in Eclipse matches the server address and port from the Appium app.
Click on Launch Button.
How to program in Eclipse using
Appium:-
What are Desired Capabilities?
Desired Capabilities are a set of keys and values sent to the Appium server to tell
the server what kind of automation session we’re interested in starting up.
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.BROWSER_NAME, “”);
capabilities.setCapability(“platformName”, “Android”);
capabilities.setCapability(CapabilityType.VERSION, “4.4”);
capabilities.setCapability(“deviceName”, “111bd508”);
capabilities.setCapability(“app”, app.getAbsolutePath());
capabilities.setCapability(“appPackage”, “com.example.android.contactmanager”);
capabilities.setCapability(“appActivity”, “.ContactManager”);
driver = new AndroidDriver(new URL(“http://127.0.0.1:4723/wd/hub”), capabilities);
Setup Mobile Device For Automation:-
• For setting up mobile devices, we have to verify
that whether developer options is enable or not.
• USB Debugging is allowed or not.
• For Real device, Android version must be 4.2 or
above.
Object Identification Using UI Automator:-
 Go to SDK folder and open the tools folder.
 Open uiautomatorviewer.
 On the actual device, open the app to the page you want to
automate.
 In UI Automator Viewer, click on Device screenshot
(second button).
 Click any element on the page and look in the Node detail
window (there you will find details about the selected
element: id, class, name, etc.)
 Use the info found (id, class) in Eclipse to click buttons, fill
input fields
Required Inputs or Query Parameter Details:-
public void setUp() throws Exception
{
File classpathRoot = new File(System.getProperty("user.dir"));
File appDir = new File(classpathRoot, "../../../apps/");
File app = new File(appDir, "App_Name.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName","Android");
capabilities.setCapability("browserName", "");
capabilities.setCapability("platformVersion", "4.4");
capabilities.setCapability("app", app.getAbsolutePath());
capabilities.setCapability("appPackage", “package_name ");
capabilities.setCapability("appActivity", ".activity_name");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
}
public void tearDown() throws Exception
{
driver.quit();
}
Tool Comparison Report :-
Advantages of Appium:-
• Open Source Tool
• Support for both platforms iOS and android.
• Handles simulators/emulators and real devices
• Supports automation of hybrid, native and webapps
• Supports most of the programming languages like Java, Ruby,
Python, C# etc.
Limitations of Appium:-
• Appium doesn’t perform testing on mobile devices support
Android Version lower than 4.2.
• Under Developing stage can't use for big project initially
• Doesn't support image comparison.
• Facing difficulty in testing the switching action of application
(from the web app to native and vice-versa).
Appium

More Related Content

What's hot

Automation testing on ios platform using appium
Automation testing on ios platform using appiumAutomation testing on ios platform using appium
Automation testing on ios platform using appiumAmbreen Khan
 
Android & iOS Automation Using Appium
Android & iOS Automation Using AppiumAndroid & iOS Automation Using Appium
Android & iOS Automation Using AppiumMindfire Solutions
 
Mobile Testing with Appium
Mobile Testing with AppiumMobile Testing with Appium
Mobile Testing with AppiumKnoldus Inc.
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation OmarUsman6
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-AutomationMindfire Solutions
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With AppiumKnoldus Inc.
 
Appium Architecture | How Appium Works | Edureka
Appium Architecture | How Appium Works | EdurekaAppium Architecture | How Appium Works | Edureka
Appium Architecture | How Appium Works | EdurekaEdureka!
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaEdureka!
 
Introduction To Appium With Robotframework
Introduction To Appium With RobotframeworkIntroduction To Appium With Robotframework
Introduction To Appium With RobotframeworkSyam Sasi
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application TestingNoor Orfahly
 
Test Automation and Selenium
Test Automation and SeleniumTest Automation and Selenium
Test Automation and SeleniumKarapet Sarkisyan
 
What is Appium? Edureka
What is Appium? EdurekaWhat is Appium? Edureka
What is Appium? EdurekaEdureka!
 
Appium & Robot Framework
Appium & Robot FrameworkAppium & Robot Framework
Appium & Robot FrameworkFurkan Ertürk
 
Cross browser testing using BrowserStack
Cross browser testing using BrowserStack Cross browser testing using BrowserStack
Cross browser testing using BrowserStack RapidValue
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using SeleniumWeifeng Zhang
 

What's hot (20)

Automation testing on ios platform using appium
Automation testing on ios platform using appiumAutomation testing on ios platform using appium
Automation testing on ios platform using appium
 
Android & iOS Automation Using Appium
Android & iOS Automation Using AppiumAndroid & iOS Automation Using Appium
Android & iOS Automation Using Appium
 
Automation using Appium
Automation using AppiumAutomation using Appium
Automation using Appium
 
Mobile Testing with Appium
Mobile Testing with AppiumMobile Testing with Appium
Mobile Testing with Appium
 
Appium
AppiumAppium
Appium
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
 
Automation Testing With Appium
Automation Testing With AppiumAutomation Testing With Appium
Automation Testing With Appium
 
Appium Architecture | How Appium Works | Edureka
Appium Architecture | How Appium Works | EdurekaAppium Architecture | How Appium Works | Edureka
Appium Architecture | How Appium Works | Edureka
 
Appium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | EdurekaAppium Interview Questions and Answers | Edureka
Appium Interview Questions and Answers | Edureka
 
Appium solution
Appium solutionAppium solution
Appium solution
 
Introduction To Appium With Robotframework
Introduction To Appium With RobotframeworkIntroduction To Appium With Robotframework
Introduction To Appium With Robotframework
 
Mobile Application Testing
Mobile Application TestingMobile Application Testing
Mobile Application Testing
 
Test Automation and Selenium
Test Automation and SeleniumTest Automation and Selenium
Test Automation and Selenium
 
Selenium
SeleniumSelenium
Selenium
 
What is Appium? Edureka
What is Appium? EdurekaWhat is Appium? Edureka
What is Appium? Edureka
 
Postman
PostmanPostman
Postman
 
Appium & Robot Framework
Appium & Robot FrameworkAppium & Robot Framework
Appium & Robot Framework
 
Cross browser testing using BrowserStack
Cross browser testing using BrowserStack Cross browser testing using BrowserStack
Cross browser testing using BrowserStack
 
Automated Web Testing Using Selenium
Automated Web Testing Using SeleniumAutomated Web Testing Using Selenium
Automated Web Testing Using Selenium
 

Similar to Appium

Appium understanding document
Appium understanding documentAppium understanding document
Appium understanding documentAkshay Pillay
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxlancelotlaytan1996
 
Android studio
Android studioAndroid studio
Android studioAndri Yabu
 
Android Automation Using Robotium
Android Automation Using RobotiumAndroid Automation Using Robotium
Android Automation Using RobotiumMindfire Solutions
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureVijay Rastogi
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android ApplicationNandini Prabhu
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspectiveGunjan Kumar
 
Titanium Studio [Updated - 18/12/2011]
Titanium Studio [Updated - 18/12/2011]Titanium Studio [Updated - 18/12/2011]
Titanium Studio [Updated - 18/12/2011]Sentinel Solutions Ltd
 
Creation of simple application using - step by step
Creation of simple application using - step by stepCreation of simple application using - step by step
Creation of simple application using - step by steppriya Nithya
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guidemagicshui
 
Mobile Testing with Selenium 2 by Jason Huggins
Mobile Testing with Selenium 2 by Jason HugginsMobile Testing with Selenium 2 by Jason Huggins
Mobile Testing with Selenium 2 by Jason HugginsSauce Labs
 
Final NEWS.pdf
Final NEWS.pdfFinal NEWS.pdf
Final NEWS.pdfRebaMaheen
 
Final NewsApp.pdf
Final NewsApp.pdfFinal NewsApp.pdf
Final NewsApp.pdfRebaMaheen
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Javaamaankhan
 

Similar to Appium (20)

Appium understanding document
Appium understanding documentAppium understanding document
Appium understanding document
 
Android Development
Android DevelopmentAndroid Development
Android Development
 
Appium solution artizone
Appium solution   artizoneAppium solution   artizone
Appium solution artizone
 
Appium- part 1
Appium- part 1Appium- part 1
Appium- part 1
 
Module-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptxModule-I_Introduction-to-Android.pptx
Module-I_Introduction-to-Android.pptx
 
Android studio
Android studioAndroid studio
Android studio
 
Android Automation Using Robotium
Android Automation Using RobotiumAndroid Automation Using Robotium
Android Automation Using Robotium
 
APPIUM
APPIUMAPPIUM
APPIUM
 
Android App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structureAndroid App development and test environment, Understaing android app structure
Android App development and test environment, Understaing android app structure
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android Application
 
Getting started with android dev and test perspective
Getting started with android   dev and test perspectiveGetting started with android   dev and test perspective
Getting started with android dev and test perspective
 
Titanium Studio [Updated - 18/12/2011]
Titanium Studio [Updated - 18/12/2011]Titanium Studio [Updated - 18/12/2011]
Titanium Studio [Updated - 18/12/2011]
 
Android CI and Appium
Android CI and AppiumAndroid CI and Appium
Android CI and Appium
 
Creation of simple application using - step by step
Creation of simple application using - step by stepCreation of simple application using - step by step
Creation of simple application using - step by step
 
Android installation guide
Android installation guideAndroid installation guide
Android installation guide
 
Mobile Testing with Selenium 2 by Jason Huggins
Mobile Testing with Selenium 2 by Jason HugginsMobile Testing with Selenium 2 by Jason Huggins
Mobile Testing with Selenium 2 by Jason Huggins
 
Final NEWS.pdf
Final NEWS.pdfFinal NEWS.pdf
Final NEWS.pdf
 
Final NewsApp.pdf
Final NewsApp.pdfFinal NewsApp.pdf
Final NewsApp.pdf
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Browser_Stack_Intro
Browser_Stack_IntroBrowser_Stack_Intro
Browser_Stack_Intro
 

More from Keshav Kashyap

Google Analytics Report Automation (Magic)
Google Analytics Report Automation (Magic) Google Analytics Report Automation (Magic)
Google Analytics Report Automation (Magic) Keshav Kashyap
 
Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Keshav Kashyap
 
Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Keshav Kashyap
 

More from Keshav Kashyap (6)

Next level of Appium
Next level of AppiumNext level of Appium
Next level of Appium
 
Api testing
Api testingApi testing
Api testing
 
#Fame case study
#Fame case study#Fame case study
#Fame case study
 
Google Analytics Report Automation (Magic)
Google Analytics Report Automation (Magic) Google Analytics Report Automation (Magic)
Google Analytics Report Automation (Magic)
 
Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)
 
Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)Google Analytics Report Automation (Magic Script)
Google Analytics Report Automation (Magic Script)
 

Recently uploaded

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )Tsuyoshi Horigome
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)Suman Mia
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 

Recently uploaded (20)

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )SPICE PARK APR2024 ( 6,793 SPICE Models )
SPICE PARK APR2024 ( 6,793 SPICE Models )
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)Software Development Life Cycle By  Team Orange (Dept. of Pharmacy)
Software Development Life Cycle By Team Orange (Dept. of Pharmacy)
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 

Appium

  • 1. Mobile Automation Testing Using APPIUM Created By: Keshav Kashyap
  • 2. Agenda:-  What is Mobile Automation?  How to Setup Android SDK?  Install and Un-install Application using CMD  How to get App Properties?  How to Use Appium?  How to program in Eclipse using Appium?  What are Desired Capabilities?  How to find elements in Mobile App using UI Automator?  Sample Program and Demo  Limitations of Appium
  • 3. What is Mobile Automation?  Mobile Automated testing provides a mechanism to consistently repeat a test procedure and verify application results. It can be effective both for regression testing as well during development.  Testing mobile applications is different and more complex than testing traditional desktop and web applications.  Mobile applications need to be tested on a variety of software platforms and versions, on diverse hardware and form factors, and under different network connectivity conditions.  Moreover, the rapid pace of mobile OS updates, the frequent introduction of new devices and the customer expectation of quick upgrades require additional test cycles
  • 4. Challenges in Mobile Automation Testing :- Two Key Challenges in Mobile Application Test Automation Mobile Platforms and Technology Coverage The primary factor that determines an automation tool’s success is its ability to work across platforms and technology stacks. The following challenges influence automation success: Device Diversity: Multiple platforms and browsers. Rendering differences. Mobile devices with varied application run times. Network Challenges: •Multiple network types (e.g., GSM/GPRS/Wi-Fi/Wi-Max). •Different speeds of connectivity across geographies. •Multiple network operators with customized network features. Hardware Challenges: •Limitations in processing speed. •Limitations of mobile memory size.
  • 5. Pre-Requisites for Mobile Automation :- • Eclipse should be installed • Android SDK and APIs for recent versions of Android • Selenium Webdriver knowledge. • Java knowledge. • Basic Knowledge of Mobile.
  • 6. Setup :-  Download Selenium Java zip archive and extract all the files in a folder called Selenium.  Download Appium for Windows zip archive and extract all files in a folder called Appium.  Download Appium Java client jar  Create a new java project in Eclipse and add Selenium and Appium Java client Jar files
  • 7. How to Setup Android SDK?  Install and Setup JAVA  Setup Java Path in Environment Variables.  Setup Path in User Variable  Setup JAVA_HOME in User Variable C:Program FilesJavajdk1.7.0bin;  Check that whether Java is installed on your system or not.  Open cmd  type Java -version  Output will provide the installed version of Java  Install Android SDK OR Just Copy SDK folder shared by anyone. If you don’t have SDK folder then you have to just click on the above installer_r16- windows.exe. By default it will be installed in C:Program FilesAndroid. You have to just copy the folder and paste it to some other drive. E.g.:- D:SDK  Now setup ANDROID_HOME  Setup Tools and Platform Tools Path in User Variable  Restart the system (Strongly Recommended)
  • 8. Install and Un-install Application using CMD Install an App :- adb install full_path_of_apk adb install C:UsersTTNDDownloadsteamchat.apk Un-Install an App :- adb uninstall package_name_of_apk adb uninstall com.famelive
  • 9. How to get App Properties:- • For app properties we have to use command:- D:SDKbuild-tools22.0.1aapt.exe dump badging app_name.apk
  • 10. What is Appium?:- Appium is an Open source , Cross Platform test automation tool for mobile apps Hosted with GitHub  Maintained by Dan Cuellar, Jonathan Lipps and a number of other contributors Supports automation of Native , Hybrid and Mobile Web apps Based on WebDriver JSON wire protocol Based on Client-Server Architecture Appium Server written in Node.js
  • 12. How to Use or Run Appium?:- Go to the Appium folder you downloaded earlier and run Appium.exe. Click on General Settings button (second button) and verify URL you defined in Eclipse matches the server address and port from the Appium app. Click on Launch Button.
  • 13. How to program in Eclipse using Appium:-
  • 14. What are Desired Capabilities? Desired Capabilities are a set of keys and values sent to the Appium server to tell the server what kind of automation session we’re interested in starting up. DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability(CapabilityType.BROWSER_NAME, “”); capabilities.setCapability(“platformName”, “Android”); capabilities.setCapability(CapabilityType.VERSION, “4.4”); capabilities.setCapability(“deviceName”, “111bd508”); capabilities.setCapability(“app”, app.getAbsolutePath()); capabilities.setCapability(“appPackage”, “com.example.android.contactmanager”); capabilities.setCapability(“appActivity”, “.ContactManager”); driver = new AndroidDriver(new URL(“http://127.0.0.1:4723/wd/hub”), capabilities);
  • 15. Setup Mobile Device For Automation:- • For setting up mobile devices, we have to verify that whether developer options is enable or not. • USB Debugging is allowed or not. • For Real device, Android version must be 4.2 or above.
  • 16. Object Identification Using UI Automator:-  Go to SDK folder and open the tools folder.  Open uiautomatorviewer.  On the actual device, open the app to the page you want to automate.  In UI Automator Viewer, click on Device screenshot (second button).  Click any element on the page and look in the Node detail window (there you will find details about the selected element: id, class, name, etc.)  Use the info found (id, class) in Eclipse to click buttons, fill input fields
  • 17. Required Inputs or Query Parameter Details:- public void setUp() throws Exception { File classpathRoot = new File(System.getProperty("user.dir")); File appDir = new File(classpathRoot, "../../../apps/"); File app = new File(appDir, "App_Name.apk"); DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName","Android"); capabilities.setCapability("browserName", ""); capabilities.setCapability("platformVersion", "4.4"); capabilities.setCapability("app", app.getAbsolutePath()); capabilities.setCapability("appPackage", “package_name "); capabilities.setCapability("appActivity", ".activity_name"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); } public void tearDown() throws Exception { driver.quit(); }
  • 19. Advantages of Appium:- • Open Source Tool • Support for both platforms iOS and android. • Handles simulators/emulators and real devices • Supports automation of hybrid, native and webapps • Supports most of the programming languages like Java, Ruby, Python, C# etc.
  • 20. Limitations of Appium:- • Appium doesn’t perform testing on mobile devices support Android Version lower than 4.2. • Under Developing stage can't use for big project initially • Doesn't support image comparison. • Facing difficulty in testing the switching action of application (from the web app to native and vice-versa).