Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mobile Automation Using Appium - vodQA Bangalore 2015

988 views

Published on

Mobile automation using Appium; an open source, cross platform tool for automating native, mobile web and hybrid applications

Published in: Technology
  • Be the first to comment

Mobile Automation Using Appium - vodQA Bangalore 2015

  1. 1. AUTOMATION - THE MOBILE WAY Mobile automation using Appium : An open source, cross platform tool for automating native, mobile web and hybrid applications
  2. 2. Mobile Testing • Types? • Native vs Hybrid vs Web? • Challenges? 2
  3. 3. Appium Philosophy • You’re testing the same app you are shipping • Write tests in any language and framework you want • Wrapped vendor-provided frameworks in WebDriver API (JSON Wire Protocol) • Open source 3
  4. 4. 4 Calabash Appium Robotium UiAutomator Frank MonkeyTalk Android Yes Yes Yes Yes No Yes iOS Yes Yes No No Yes Yes Scripting Language Ruby Any Java Java Ruby MonkeyTalk Command Language Supported API Levels All All All >=16 No Android Support Javascript API Open Source Yes Yes No (Recorder) Yes Yes Yes Support for Apps Native, Hybrid Native, Hybrid, Web Native, Hybrid Native Native Native, Hybrid
  5. 5. Stats 5 Commits 5920 Releases 99 Contributors 153 Downloads ~17k/month Total Issue 3889
  6. 6. Requirements • iOS: • Mac OSX 10.7+ • XCode 4.5+ w/ Command Line Tools • Android: • Mac OSX 10.7+ OR Windows 7+ OR Linux • Android SDK >= 17 • Android SDK < 16 (Selendroid mode) • Run Appium via: • Appium app • node.js 6
  7. 7. Instruments Controller (iOS) Instruments Command Server Unix Socket Server Instruments Command Client Unix Socket Client Instruments bootstrap.js WebDriver Controller iOS - UI Automation WebDriver Script
  8. 8. UiAutomator Controller (Android) UiAutomator Command Client TCP Client WebDriver Controller Android - UI Automator (4.2+), Selendroid (2.3+) WebDriver Script TCP Server UiAutomator Command Server bootstrap.jar
  9. 9. Appium Inspector 9
  10. 10. iOS vs Android on Real Device 10
  11. 11. iOS vs Android on Simulator 11
  12. 12. From Appium 1.x vanilla webdriver clients Appium client libraries device, version deviceName, platformVersion browsers (chrome/safari) browserName name accessibility_id tag name classname switch_to.window switch_to.context(“WEBVIEW”) driver.execute(“mobile:lock”, [5]) driver.lock(5) gesture methods TouchAction / MultiAction API
  13. 13. References • vodQA Github - https://github.com/saikrishna321/VodQa_MobileAutomation WorkShop • iOS Automation [Mac] - http://smritituteja.in/ios-mobile- automation-using-appium/ • Appium Architecture - http://appium.io/slate/en/master/?java#introduction-to- appium • Appium [Sauce Labs] - https://saucelabs.com/appium • Android Automation [Windows] - http://smritituteja.in/android- automation-appium-windows/ • Appium Examples - https://github.com/appium/appium
  14. 14. THANK YOU Q & A SAI KRISHNA : saikrisv@thoughtworks.com SMRITI TUTEJA : smrititu@thoughtworks.com

×