SlideShare a Scribd company logo
Get a start with
for Mobile Automation (Android)
PEER LEARNING PROGRAM
BY ABHISHEK YADAV (@ABHISHEKKYD)
[RECAP] Agenda
 Overview of Mobile Automation
 About Appium
 Overview of Appium over other open source tools
 Android Installation with emulator
 Scripting using Appium for Mobile Web Automation
 Scripting using Appium for Mobile App Automation
 Framework Development using Appium
 Appium iOS Automation
[RECAP] Overview of Mobile
Automation
Now a days every organization prefers automated testing once a product
reaches to the stable phase to reduce the testing effort. Since testing cost is
an important factor for any project, organizations have started preferring
open source test automation tools (which have reached a stage where they
now rival the commercial ones) instead of investing in costly commercial
testing tools.
A variety of open source automation testing tools is available for almost all
types of testing such as functional, UAT, regression, performance etc. Some
open source tools are Appium, Calabash, MonkeyTalk, Robotium, etc.
[RECAP] About Appium
 Appium is an open source test automation framework for use with
native, hybrid and mobile web apps.
 It drives iOS, Android, and Windows apps using the WebDriver protocol.
 Importantly, Appium is “cross-platform”: it allows you to write tests against
multiple platforms (iOS, Android, Windows), using the same API. This
enables code reuse between iOS, Android, and Windows testsuites.
[RECAP] Appium for Android
Webdriver Controller
UIAutomator Controller
UIAutomator Client
TCP Client
Bootstrap.jar
UIAutomator Server
TCP Server
[RECAP] About Appium
[RECAP] Overview of Appium over
other open source tools
A huge number of mobile testing tools have been developed in recent years
to support mobile development. As more companies are developing mobile
products and the marketplace is seeing more devices, platforms, and versions,
testing your mobile apps is vital. When it comes choosing what mobile testing
tool is right for you, there is a huge array of options, each with different
strengths and weaknesses.
[RECAP] Overview of Appium over
other open source tools
[RECAP] Android Installation with
emulator
 Android Studio provides the fastest tools for building apps on every type
of Android device.
 World-class code editing, debugging, performance tooling, a flexible build
system, and an instant build/deploy system all allow you to focus on
building unique and high quality apps.
https://developer.android.com/studio/index.html
[RECAP] Android Installation with
emulatorAndroid Studio GUI
[RECAP] Android Installation with
emulator android
android avd
Command Line }
[RECAP] Scripting using Appium for
Mobile Web Automation
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "browser");
capabilities.setCapability("platformVersion", "5.1");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
driver.get("http://www.google.com");
WebElement keyword = driver.findElement(By.name("q"));
keyword.sendKeys("abhishek yadav qa");
[RECAP] Scripting using Appium for
Mobile App Automation
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");
capabilities.setCapability("platformVersion", "5.1");
capabilities.setCapability("appPackage", "com.android.calculator2");
capabilities.setCapability("appActivity","com.android.calculator2.Calculator
");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
[RECAP] Scripting using Appium for
Mobile App Automation
[RECAP] Framework Development
using Appium
 Apache Maven
 Page Objects
 TestNG
 ReportNG
 Allure
 Cucumber (BDD)
 Jenkins
[RECAP] Appium for iOS
Webdriver Controller
Instruments Controller
Instruments Command
Server
Unix Socket Server
Instruments Command
Client
Unix Socket Client
Instruments
Bootstrap.js
[RECAP] Appium iOS Automation
[RECAP] Agenda
 Appium Maven Project
 Script Development within Maven Project
 Locator Strategy for Android Web
 Advance Locator Strategy for Android Web
 Advance Locator Strategy for iOS App
[RECAP] Appium Maven Project
[RECAP] Script Development within
Maven Project
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "browser");
capabilities.setCapability("platformVersion", "5.1");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
driver.get("http://www.google.com");
WebElement keyword = driver.findElement(By.name("q"));
keyword.sendKeys("abhishek yadav qa");
keyword.sendKeys(Keys.ENTER);
[RECAP] Locator Strategy for Android
 Id
 Name
 css selector
 xpath
 //android.widget.TextView[@resource-
id='com.apptivateme.next.ct:id/tvVideoTime']
 //android.widget.ImageView[@resource-
id='com.apptivateme.next.ct:id/search_close_btn']
 //android.widget.FrameLayout[@resource-
id='com.apptivateme.next.ct:id/transparent_spacer_passthrough']
[RECAP] Advanced Locator Strategies
Android
 MobileBy
 ByAccessibilityId
 ByAndroidUIAutomator
[RECAP] MobileBy
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");
capabilities.setCapability("platformVersion", "5.1");
capabilities.setCapability("appPackage", "com.android.calculator2");
capabilities.setCapability("appActivity","com.android.calculator2.Calculator");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
driver.findElement(MobileBy.name("4")).click();
[RECAP] ByAccessibilityId
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");
capabilities.setCapability("platformVersion", "5.1");
capabilities.setCapability("appPackage", "com.android.calculator2");
capabilities.setCapability("appActivity","com.android.calculator2.Calculator");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),
capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
driver.findElement(MobileBy.name("4")).click();
driver.findElement(MobileBy.AccessibilityId("delete")).click();
[RECAP] ByAndroidUIAutomator
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability("deviceName", "TestAndroid");
capabilities.setCapability("platformName", "Android");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android");
capabilities.setCapability("platformVersion", "5.1");
capabilities.setCapability("appPackage", "com.android.calculator2");
capabilities.setCapability("appActivity","com.android.calculator2.Calculator");
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
driver.findElement(MobileBy.AndroidUIAutomator("new UiSelector().text("3")")).click();
[RECAP] ByAndroidUIAutomator
 https://discuss.appium.io/t/how-to-use-uiselector-with-appium-in-
java/443/20
[RECAP] Locator Strategy for iOS
 Id
 Name
 css selector
 xpath
 //UIAApplication[1]/UIAWindow[1]/UIASearchBar[1]/UIASearchBar[1]
[RECAP] Locator Strategy for iOS
[RECAP] Advance Locator Strategy for
iOS
 IosUIAutomation
driver.findElementByIosUIAutomation
("tableViews()[0].cells(1).textViews()
.firstWithPredicate("name == New Delhi And NCR")");
https://discuss.appium.io/t/how-to-use-findelements-byiosuiautomation/607
Agenda
 Install Appium using NPM
 Start Appium Server from command line
 Command line Arguments for Appium
 Features of New Appium Client
 Live practical to automate Twitter Mobile App
 Live practical to automate Facebook Mobile App
 Best practices for framework development using Appium and Java
Appium using NPM and CLI
 npm install –g appium
 appium
https://github.com/appium/appium/blob/master/docs/en/writing-running-
appium/caps.md
Appium Live Demo
 Twitter
 Facebook
Features of New Appium Client
Best practices for framework
development
References
 http://appium.io/
 https://appium.io/slate/en/tutorial/android.html
 https://github.com/appium/appium
 https://wiki.saucelabs.com/display/DOCS/Getting+Started+with+Appium+
for+Mobile+Native+Application+Testing
 https://github.com/appium/appium-desktop
 http://testng.org/doc/
 https://maven.apache.org/
Appium overview session final
Appium overview session final

More Related Content

PDF
Appium: Automation for Mobile Apps
PDF
Mobile automation – should I use robotium or calabash or appium?
PPTX
Automation With Appium
PPTX
Appium ppt
PDF
Appium
PDF
Appium Interview Questions and Answers | Edureka
PDF
Mobile Test Automation - Appium
PPTX
Appium solution artizone
Appium: Automation for Mobile Apps
Mobile automation – should I use robotium or calabash or appium?
Automation With Appium
Appium ppt
Appium
Appium Interview Questions and Answers | Edureka
Mobile Test Automation - Appium
Appium solution artizone

What's hot (20)

PPTX
Appium meet up noida
PPTX
Appium overview (Selenium Israel #2, Feb. 2014)
PPTX
Appium overview
PPTX
Appium testing api
PPTX
Appium - test automation for mobile apps
PDF
Appium workship, Mobile Web+Dev Conference
PPTX
Parallel Test Runs with Appium on Real Mobile Devices – Hands-on Webinar
PPTX
ATAGTR2017 Appium
PPTX
Mobile automation testing with selenium and appium
PPTX
Appium solution
PPT
PDF
Getting started with appium
PPTX
Automation Testing With Appium
PPT
Appium training online|Mobile automation testing with appium
PPT
Appium tutorial| Appium Training
PPT
Android & iOS Automation Using Appium
PDF
Appium basics
PPTX
Mastering Mobile Test Automation with Appium
PDF
Advanced Appium Tips & Tricks with Jonathan Lipps
PDF
Appium workshop technopark trivandrum
Appium meet up noida
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview
Appium testing api
Appium - test automation for mobile apps
Appium workship, Mobile Web+Dev Conference
Parallel Test Runs with Appium on Real Mobile Devices – Hands-on Webinar
ATAGTR2017 Appium
Mobile automation testing with selenium and appium
Appium solution
Getting started with appium
Automation Testing With Appium
Appium training online|Mobile automation testing with appium
Appium tutorial| Appium Training
Android & iOS Automation Using Appium
Appium basics
Mastering Mobile Test Automation with Appium
Advanced Appium Tips & Tricks with Jonathan Lipps
Appium workshop technopark trivandrum
Ad

Similar to Appium overview session final (20)

PPTX
Next level of Appium
PDF
A Step-by-Step Guide to Test Automation with Appium.pdf
PPT
PDF
A Comprehensive Guide to Cross-Platform Mobile Test Automation Using Appium.pdf
PDF
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
PDF
Automating Mobile Web Browsers with Appium.pdf
PPTX
Mobile automation using Appium
PDF
How to Test Android and iOS Mobile Apps with Appium.pdf
PPTX
Test automation of mobile apps (Bugs'a'loud Vilnius QA Gathering)
PDF
Automated Mobile Testing using Appium.pdf
PDF
Test automation of mobile apps
PDF
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
PPTX
Mobile Automation with Appium
PDF
Mobile automation using appium.pptx
PPTX
Mobile Automation Using Appium - vodQA Bangalore 2015
PDF
The Present and Future of Mobile Test Automation with Appium
PPTX
b4usolution_Appium Mobile Automation Testing Made Awesome
PPTX
Appium.pptx
PDF
Top 15 Appium Interview Questions and Answers in 2023.pdf
PPTX
Appium Overview - by Daniel Puterman
Next level of Appium
A Step-by-Step Guide to Test Automation with Appium.pdf
A Comprehensive Guide to Cross-Platform Mobile Test Automation Using Appium.pdf
A Comprehensive Appium Guide for Hybrid App Automation Testing.pdf
Automating Mobile Web Browsers with Appium.pdf
Mobile automation using Appium
How to Test Android and iOS Mobile Apps with Appium.pdf
Test automation of mobile apps (Bugs'a'loud Vilnius QA Gathering)
Automated Mobile Testing using Appium.pdf
Test automation of mobile apps
Appium Automation Testing Tutorial PDF: Learn Mobile Testing in 7 Days
Mobile Automation with Appium
Mobile automation using appium.pptx
Mobile Automation Using Appium - vodQA Bangalore 2015
The Present and Future of Mobile Test Automation with Appium
b4usolution_Appium Mobile Automation Testing Made Awesome
Appium.pptx
Top 15 Appium Interview Questions and Answers in 2023.pdf
Appium Overview - by Daniel Puterman
Ad

Recently uploaded (20)

PDF
KodekX | Application Modernization Development
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Approach and Philosophy of On baking technology
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
KodekX | Application Modernization Development
Unlocking AI with Model Context Protocol (MCP)
Understanding_Digital_Forensics_Presentation.pptx
NewMind AI Weekly Chronicles - August'25 Week I
Advanced methodologies resolving dimensionality complications for autism neur...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
sap open course for s4hana steps from ECC to s4
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Approach and Philosophy of On baking technology
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Review of recent advances in non-invasive hemoglobin estimation
Mobile App Security Testing_ A Comprehensive Guide.pdf
MIND Revenue Release Quarter 2 2025 Press Release
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Diabetes mellitus diagnosis method based random forest with bat algorithm

Appium overview session final

  • 1. Get a start with for Mobile Automation (Android) PEER LEARNING PROGRAM BY ABHISHEK YADAV (@ABHISHEKKYD)
  • 2. [RECAP] Agenda  Overview of Mobile Automation  About Appium  Overview of Appium over other open source tools  Android Installation with emulator  Scripting using Appium for Mobile Web Automation  Scripting using Appium for Mobile App Automation  Framework Development using Appium  Appium iOS Automation
  • 3. [RECAP] Overview of Mobile Automation Now a days every organization prefers automated testing once a product reaches to the stable phase to reduce the testing effort. Since testing cost is an important factor for any project, organizations have started preferring open source test automation tools (which have reached a stage where they now rival the commercial ones) instead of investing in costly commercial testing tools. A variety of open source automation testing tools is available for almost all types of testing such as functional, UAT, regression, performance etc. Some open source tools are Appium, Calabash, MonkeyTalk, Robotium, etc.
  • 4. [RECAP] About Appium  Appium is an open source test automation framework for use with native, hybrid and mobile web apps.  It drives iOS, Android, and Windows apps using the WebDriver protocol.  Importantly, Appium is “cross-platform”: it allows you to write tests against multiple platforms (iOS, Android, Windows), using the same API. This enables code reuse between iOS, Android, and Windows testsuites.
  • 5. [RECAP] Appium for Android Webdriver Controller UIAutomator Controller UIAutomator Client TCP Client Bootstrap.jar UIAutomator Server TCP Server
  • 7. [RECAP] Overview of Appium over other open source tools A huge number of mobile testing tools have been developed in recent years to support mobile development. As more companies are developing mobile products and the marketplace is seeing more devices, platforms, and versions, testing your mobile apps is vital. When it comes choosing what mobile testing tool is right for you, there is a huge array of options, each with different strengths and weaknesses.
  • 8. [RECAP] Overview of Appium over other open source tools
  • 9. [RECAP] Android Installation with emulator  Android Studio provides the fastest tools for building apps on every type of Android device.  World-class code editing, debugging, performance tooling, a flexible build system, and an instant build/deploy system all allow you to focus on building unique and high quality apps. https://developer.android.com/studio/index.html
  • 10. [RECAP] Android Installation with emulatorAndroid Studio GUI
  • 11. [RECAP] Android Installation with emulator android android avd Command Line }
  • 12. [RECAP] Scripting using Appium for Mobile Web Automation DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "browser"); capabilities.setCapability("platformVersion", "5.1"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); driver.get("http://www.google.com"); WebElement keyword = driver.findElement(By.name("q")); keyword.sendKeys("abhishek yadav qa");
  • 13. [RECAP] Scripting using Appium for Mobile App Automation DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android"); capabilities.setCapability("platformVersion", "5.1"); capabilities.setCapability("appPackage", "com.android.calculator2"); capabilities.setCapability("appActivity","com.android.calculator2.Calculator "); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS);
  • 14. [RECAP] Scripting using Appium for Mobile App Automation
  • 15. [RECAP] Framework Development using Appium  Apache Maven  Page Objects  TestNG  ReportNG  Allure  Cucumber (BDD)  Jenkins
  • 16. [RECAP] Appium for iOS Webdriver Controller Instruments Controller Instruments Command Server Unix Socket Server Instruments Command Client Unix Socket Client Instruments Bootstrap.js
  • 17. [RECAP] Appium iOS Automation
  • 18. [RECAP] Agenda  Appium Maven Project  Script Development within Maven Project  Locator Strategy for Android Web  Advance Locator Strategy for Android Web  Advance Locator Strategy for iOS App
  • 20. [RECAP] Script Development within Maven Project DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "browser"); capabilities.setCapability("platformVersion", "5.1"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); driver.get("http://www.google.com"); WebElement keyword = driver.findElement(By.name("q")); keyword.sendKeys("abhishek yadav qa"); keyword.sendKeys(Keys.ENTER);
  • 21. [RECAP] Locator Strategy for Android  Id  Name  css selector  xpath  //android.widget.TextView[@resource- id='com.apptivateme.next.ct:id/tvVideoTime']  //android.widget.ImageView[@resource- id='com.apptivateme.next.ct:id/search_close_btn']  //android.widget.FrameLayout[@resource- id='com.apptivateme.next.ct:id/transparent_spacer_passthrough']
  • 22. [RECAP] Advanced Locator Strategies Android  MobileBy  ByAccessibilityId  ByAndroidUIAutomator
  • 23. [RECAP] MobileBy DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android"); capabilities.setCapability("platformVersion", "5.1"); capabilities.setCapability("appPackage", "com.android.calculator2"); capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); driver.findElement(MobileBy.name("4")).click();
  • 24. [RECAP] ByAccessibilityId DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android"); capabilities.setCapability("platformVersion", "5.1"); capabilities.setCapability("appPackage", "com.android.calculator2"); capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); driver.findElement(MobileBy.name("4")).click(); driver.findElement(MobileBy.AccessibilityId("delete")).click();
  • 25. [RECAP] ByAndroidUIAutomator DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("deviceName", "TestAndroid"); capabilities.setCapability("platformName", "Android"); capabilities.setCapability(CapabilityType.BROWSER_NAME, "Android"); capabilities.setCapability("platformVersion", "5.1"); capabilities.setCapability("appPackage", "com.android.calculator2"); capabilities.setCapability("appActivity","com.android.calculator2.Calculator"); driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities); driver.manage().timeouts().implicitlyWait(80, TimeUnit.SECONDS); driver.findElement(MobileBy.AndroidUIAutomator("new UiSelector().text("3")")).click();
  • 27. [RECAP] Locator Strategy for iOS  Id  Name  css selector  xpath  //UIAApplication[1]/UIAWindow[1]/UIASearchBar[1]/UIASearchBar[1]
  • 29. [RECAP] Advance Locator Strategy for iOS  IosUIAutomation driver.findElementByIosUIAutomation ("tableViews()[0].cells(1).textViews() .firstWithPredicate("name == New Delhi And NCR")"); https://discuss.appium.io/t/how-to-use-findelements-byiosuiautomation/607
  • 30. Agenda  Install Appium using NPM  Start Appium Server from command line  Command line Arguments for Appium  Features of New Appium Client  Live practical to automate Twitter Mobile App  Live practical to automate Facebook Mobile App  Best practices for framework development using Appium and Java
  • 31. Appium using NPM and CLI  npm install –g appium  appium https://github.com/appium/appium/blob/master/docs/en/writing-running- appium/caps.md
  • 32. Appium Live Demo  Twitter  Facebook
  • 33. Features of New Appium Client
  • 34. Best practices for framework development
  • 35. References  http://appium.io/  https://appium.io/slate/en/tutorial/android.html  https://github.com/appium/appium  https://wiki.saucelabs.com/display/DOCS/Getting+Started+with+Appium+ for+Mobile+Native+Application+Testing  https://github.com/appium/appium-desktop  http://testng.org/doc/  https://maven.apache.org/