SlideShare a Scribd company logo
1 of 26
Download to read offline
Appium
Reality check on the world’s leading Open
Source Framework for Mobile Testing
4th Meetup of Mobile Apps Dev&Test
May 26, 2015
Asaf Saar
asaf.saar@tenkod.com
www.tenkod.com
Agenda
1. Intro
2. Evolution of Mobile
3. Appium Overview
4. Why Appium?
5. Reality Check
About Me
§  Asaf	
  Saar,	
  CEO	
  &	
  CTO	
  of	
  TenKod	
  Ltd.	
  	
   	
  	
  
§  20	
  years	
  of	
  professional	
  experience	
  in	
  So>ware	
  Engineering	
  
§  Prior	
  to	
  TenKod,	
  8	
  years	
  at	
  SAP,	
  last	
  role	
  as	
  APO	
  of	
  SE	
  
§  Agile	
  So>ware	
  Engineering	
  	
  trainer,	
  coacher	
  and	
  mentor	
  
§  Married	
  to	
  Merav	
  and	
  father	
  of	
  three	
  
§  Astronomy	
  and	
  fast	
  cars	
  are	
  my	
  hobbies	
  
http://il.linkedin.com/in/asafsaar
asaf.saar@tenkod.com
The world goes mobile
TenKod enables organizations
to maximize profit by changing
the way mobile apps are being
delivered!
Evolution of Mobile - Devices
§  1973	
  –	
  First	
  handheld	
  mobile	
  developed	
  
§  1984	
  –	
  Nokia	
  talkman	
  
§  1992	
  –	
  Motorola	
  InternaRonal	
  3200	
  
§  1994	
  –	
  IBM	
  Simon	
  Personal	
  Communicator	
  	
  
§  1996	
  –	
  Motorola	
  Startac	
  
§  1998	
  –	
  Nokia	
  5110	
  
§  1999	
  –	
  BlackBerry	
  850	
  	
  
§  2007	
  –	
  iPhone	
  
§  2008	
  –	
  Android	
  
Evolution of Mobile - OS
§  1973-­‐1993	
  –	
  Embedded	
  System	
  based	
  OS	
  
§  1996	
  –	
  Palm	
  Pilot,	
  Windows	
  CE	
  
§  2000	
  –	
  Symbian	
  
§  2002	
  –	
  BlackBerry	
  
§  2007	
  –	
  iOS,	
  Windows	
  Mobile	
  
§  2008	
  –	
  Android	
  
§  2009	
  –	
  webOS,	
  Bada,	
  Palm	
  OS	
  
§  2011	
  –	
  Tizen	
  
§  2012	
  –	
  Firefox	
  OS	
  
§  2013	
  –	
  Ubuntu	
  Touch	
  
World’s most
popular OS and
Smartphones till
2010…
Mobile Development Landscape
Development	
  Targets	
  
§  OS	
  Level	
  
§  NaRve	
  
§  Web	
  
§  Hybrid	
  
Development	
  Landscapes	
  
§  Single	
  developer	
  
§  Team	
  
§  Staging	
  
§  Cloud	
  
§  Hybrid	
  
Development	
  Frameworks	
  
§  Android	
  SDK	
  
§  iOS	
  ObjecRveC/Swi>	
  
§  Windows	
  Mobile	
  /	
  .NET	
  
§  PhoneGap	
  
§  Titanium	
  Appcelerator	
  
§  Xamarin	
  
§  Appery.io	
  
§  Angular	
  UI	
  
§  Sencha	
  Touch	
  
§  ………	
  
iOS Challenge
§  15	
  DisRnct	
  Devices	
  (coun&ng	
  from	
  iPhone	
  4S…)	
  
§  70%	
  of	
  users	
  adopt	
  latest	
  OS	
  within	
  6	
  months	
  
§  8	
  DisRnct	
  screen	
  dimensions	
  
§  18,796	
  DisRnct	
  Devices	
  (as	
  of	
  8/14…)	
  
§  5%	
  of	
  users	
  adopt	
  latest	
  OS	
  
§  150	
  DisRnct	
  screen	
  dimensions	
  
Android Challenge
Mobile is Mission Critical
Source: Perfecto Mobile, Achieving Continuous Quality eBook
§  Mobile	
  adopRon	
  is	
  growing	
  8	
  Rmes	
  faster	
  than	
  web	
  
§  60%	
  of	
  online	
  traffic	
  now	
  originates	
  from	
  mobile	
  devices	
  
§  73%	
  of	
  Millennials	
  are	
  transacRng	
  directly	
  from	
  mobile	
  
§  More	
  than	
  80%	
  of	
  mobile	
  Rme	
  is	
  spent	
  within	
  naRve	
  apps	
  
§  Windows	
  Phone	
  and	
  BlackBerry	
  devices	
  account	
  for	
  a	
  total	
  
of	
  7%	
  in	
  EU5	
  and	
  4%	
  in	
  the	
  U.S.	
  
Before we dive to Appium
This	
  session	
  is	
  all	
  about	
  reading	
  
between	
  the	
  lines	
  and	
  paying	
  
a>en&on	
  to	
  details…	
  
Appium
Appium	
  is	
  an	
  open	
  source	
  test	
  automaRon	
  
framework	
  for	
  use	
  with	
  naRve,	
  hybrid	
  and	
  
mobile	
  web	
  apps.	
  
http://appium.io/slate/en/master/?java#about-appium
Why Appium?
§  Mobile	
  Test	
  AutomaRon	
  for	
  iOS	
  and	
  Android	
  
§  Automate	
  NaRve,	
  Web	
  and	
  Hybrid	
  apps	
  
§  InstrumentaRon	
  free	
  
§  Uses	
  standard	
  automaRon	
  libraries	
  of	
  Android	
  and	
  iOS	
  
§  Support	
  for	
  any	
  WebDriver	
  compaRble	
  language	
  
§  Use	
  any	
  TesRng	
  Framework	
  
Appium GUI
Appium	
  provides	
  two	
  desktop	
  apps	
  for	
  server	
  configuraRon,	
  UI	
  
inspecRon	
  and	
  recording:	
  
§  Mac	
  OS	
  –	
  for	
  Android	
  and	
  iOS	
  
§  Windows	
  –	
  for	
  Android	
  
	
  
Appium Inspector
A	
  tool	
  part	
  of	
  the	
  Appium	
  GUI	
  
Let	
  you	
  inspect	
  your	
  app’s	
  UI	
  and	
  record	
  user	
  acRons	
  
Demo…
The good
§  Open	
  Source	
  tool	
  with	
  a	
  live	
  community	
  
§  No	
  InstrumentaRon
§  Server	
  is	
  fully	
  parameterized	
  	
  
§  Works	
  with	
  real	
  devices	
  as	
  well	
  as	
  simulators	
  and	
  emulators	
  
§  WebDriver	
  &	
  	
  Page	
  Objects	
  enable	
  cross	
  plaiorm	
  test	
  code	
  
§  Appium	
  GUI	
  provides	
  a	
  good	
  kick	
  start	
  to	
  newbies	
  
§  AutomaRc	
  code	
  generaRon	
  with	
  Inspector	
  
Appium @ the real world, #1
Cable	
   &	
   Wireless	
   Communica&ons	
   is	
   a	
   Bri&sh	
   mul&na&onal	
  
telecommunica&ons	
  company	
  headquartered	
  in	
  London,	
  United	
  
Kingdom	
  with	
  opera&ons	
  in	
  the	
  US	
  and	
  Pan-­‐America.	
  
Requirements:	
  
1.  Automate	
  LIME	
  mobile	
  app	
  –	
  iOS	
  &	
  Android	
  NaRve	
  apps	
  
2.  Conduct	
  scheduling	
  calling	
  from	
  iOS	
  &	
  Android	
  devices	
  
across	
  the	
  US	
  and	
  Central	
  America,	
  log	
  calls	
  in	
  excel	
  file	
  and	
  
later	
  compare	
  with	
  backend	
  system.	
  
Appium is a NO GO for iOS
Appium @ the real world, #2
LetMobile,	
   an	
   Israeli	
   startup	
   that	
   was	
   acquired	
   in	
   2014	
   by	
  
LANDESK	
   SoSware,	
   it	
   provides	
   Secure	
   Mobile	
   E-­‐Mail	
   enables	
  
employees	
  to	
  read	
  their	
  corporate	
  mail	
  from	
  any	
  mobile	
  device.	
  
Requirements:	
  
1.  Automate	
  LetMobile	
  app	
  on	
  iOS	
  &	
  Android:	
  
Launch	
  LetMobile	
  app,	
  login	
  to	
  server,	
  install	
  iOS	
  security	
  
profile	
  in	
  selngs	
  app,	
  switch	
  to	
  built-­‐in	
  iOS	
  Mail	
  app,	
  review	
  
mail	
  content,	
  switch	
  back	
  to	
  LetMobile	
  app,	
  login	
  to	
  server,	
  
switch	
  back	
  to	
  Mail	
  app	
  and	
  read	
  Mail	
  review	
  mail	
  content.	
  
Appium is a NO GO for iOS
The not so good – Setup
Setup	
  is	
  a	
  bit	
  tedious	
  
§  DocumentaRon	
  is	
  messy	
  and	
  not	
  up-­‐to	
  date	
  
§  A	
  lot	
  of	
  prerequisites	
  and	
  manual	
  steps:	
  
Java,	
  Android	
  SDK,	
  Maven	
  /	
  Ant,	
  Node.js,	
  Xcode,	
  Xcode,	
  
Command	
  Line	
  Tools	
  
§  Install	
  Brew/Homebrew,	
  NPM,	
  Appium	
  app,	
  Appium	
  Client	
  
§  iOS	
  Real	
  device	
  setup	
  is	
  a	
  big	
  headache	
  
The not so good – Usage
Not	
  really	
  prime	
  Rme	
  ready	
  
§  Android	
  and	
  IOS	
  only,	
  while	
  iOS	
  is	
  on	
  Mac	
  OS	
  only	
  
§  iOS	
  is	
  based	
  on	
  Xcode	
  Instruments…	
  
§  …	
  Hence	
  no	
  Parallel	
  iOS	
  test	
  execuRon	
  is	
  possible	
  
§  iOS	
  automaRon	
  of	
  AUT	
  only,	
  NO	
  context	
  switch	
  is	
  possible	
  
(put	
  app	
  in	
  background	
  is	
  NOT	
  stable)	
  
§  Android	
  keyboard	
  can	
  not	
  be	
  automated	
  (Send	
  Keys	
  only)	
  
§  Time	
  required	
  to	
  implement	
  robust	
  test	
  code	
  is	
  high
§  Development	
  (OOP)	
  knowledge	
  is	
  a	
  must	
  
The not so good – Appium GUI
Appium	
  GUI	
  is	
  	
  
§  Not	
  a	
  standalone	
  automaRon	
  tool	
  
§  Good	
  support	
  for	
  NaRve	
  apps	
  
§  Yet	
  No	
  support	
  for	
  Web	
  and	
  Hybrid	
  
§  No	
  Linux	
  version	
  
§  Generated	
  code	
  relies	
  heavily	
  on	
  absolute	
  Xpaths	
  
§  Can’t	
  automate	
  spinner	
  wheels,	
  noRficaRons,	
  toast	
  
messages	
  
§  And	
  it	
  is	
  VERY	
  buggy…	
  
Tips for getting things running
§  Internalize	
  that	
  Appium	
  is	
  a	
  framework	
  and	
  not	
  a	
  product	
  
§  Internalize	
  that	
  Open	
  Source	
  does	
  cost	
  money	
  
§  Pay	
  apenRon	
  to	
  details	
  before	
  diving	
  into	
  the	
  implementaRon	
  
§  Implement	
  a	
  project	
  build	
  tool,	
  e.g.	
  Maven	
  
§  Learn	
  WebDriver	
  API	
  and	
  Page	
  Objects	
  Design	
  Papern	
  
§  Use	
  Chrome	
  Developer	
  Tools,	
  Firebug,	
  etc.	
  for	
  hybrid	
  and	
  web	
  
§  Setup	
  parallel	
  tesRng	
  of	
  iOS	
  via	
  Mobile	
  Cloud	
  that	
  supports	
  it	
  
Thank you!
Copyright © 2015 TenKod Ltd. All rights reserved
Asaf Saar
asaf.saar@tenkod.com
www.tenkod.com
References	
  and	
  trademarks:	
  
1.  TenKod	
  name,	
  logo	
  and	
  icon	
  are	
  trademarks	
  of	
  A.O.E	
  TenKod	
  Ltd.	
  
2.  Amazon	
  AWS	
  name	
  and	
  logo	
  are	
  trademarks	
  of	
  Amazon	
  Web	
  Services,	
  Inc.	
  or	
  its	
  
affiliates.	
  
3.  Eclipse	
  name	
  and	
  logo	
  are	
  the	
  intellectual	
  property	
  of	
  the	
  Eclipse	
  FoundaRon.	
  
4.  Sonatype	
  and	
  Sonatype	
  Nexus	
  are	
  trademarks	
  of	
  Sonatype,	
  Inc.	
  
5.  Apache	
  Maven	
  and	
  Maven	
  are	
  trademarks	
  of	
  the	
  Apache	
  So>ware	
  FoundaRon.	
  
6.  M2Eclipse	
  is	
  a	
  trademark	
  of	
  the	
  Eclipse	
  FoundaRon.	
  
7.  Git	
  is	
  a	
  member	
  of	
  So>ware	
  Freedom	
  Conservancy	
  
8.  All	
  other	
  trademarks	
  are	
  the	
  property	
  of	
  their	
  respecRve	
  owners.	
  

More Related Content

What's hot

Advanced Appium Tips & Tricks with Jonathan Lipps
Advanced Appium Tips & Tricks with Jonathan LippsAdvanced Appium Tips & Tricks with Jonathan Lipps
Advanced Appium Tips & Tricks with Jonathan LippsPerfecto by Perforce
 
Mobile Test Automation - Appium
Mobile Test Automation - AppiumMobile Test Automation - Appium
Mobile Test Automation - AppiumMaria Machlowska
 
Getting Started with Mobile Test Automation & Appium
Getting Started with Mobile Test Automation & AppiumGetting Started with Mobile Test Automation & Appium
Getting Started with Mobile Test Automation & AppiumSauce Labs
 
10 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.510 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.5Sauce Labs
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumLizzy Guido (she/her)
 
Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Thoughtworks
 
Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions		Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions Sauce Labs
 
Wheat - Mobile functional test automation
Wheat - Mobile functional test automationWheat - Mobile functional test automation
Wheat - Mobile functional test automationSunny Tambi
 
Beyond Appium: Testing with Espresso & the Real Device Cloud
Beyond Appium: Testing with Espresso & the Real Device CloudBeyond Appium: Testing with Espresso & the Real Device Cloud
Beyond Appium: Testing with Espresso & the Real Device CloudSauce Labs
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training QA Masters
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)danielputerman
 
Appium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAppium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAndrii Dzynia
 
Parallel testing with appium
Parallel testing with appiumParallel testing with appium
Parallel testing with appiummoizjv
 
Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Zado Technologies
 
[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA TeamSrijan Technologies
 
Selenium Camp 2016
Selenium Camp 2016Selenium Camp 2016
Selenium Camp 2016Dan Cuellar
 
Testing Your Android and iOS Apps with Appium in Testdroid Cloud
Testing Your Android and iOS Apps with Appium in Testdroid CloudTesting Your Android and iOS Apps with Appium in Testdroid Cloud
Testing Your Android and iOS Apps with Appium in Testdroid CloudBitbar
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-AutomationMindfire Solutions
 

What's hot (20)

Advanced Appium Tips & Tricks with Jonathan Lipps
Advanced Appium Tips & Tricks with Jonathan LippsAdvanced Appium Tips & Tricks with Jonathan Lipps
Advanced Appium Tips & Tricks with Jonathan Lipps
 
Mobile Test Automation - Appium
Mobile Test Automation - AppiumMobile Test Automation - Appium
Mobile Test Automation - Appium
 
Getting Started with Mobile Test Automation & Appium
Getting Started with Mobile Test Automation & AppiumGetting Started with Mobile Test Automation & Appium
Getting Started with Mobile Test Automation & Appium
 
10 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.510 things you didnt know about appium + whats new in appium 1.5
10 things you didnt know about appium + whats new in appium 1.5
 
Everything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and SeleniumEverything You Need To Know about Appium and Selenium
Everything You Need To Know about Appium and Selenium
 
Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015Mobile Automation Using Appium - vodQA Bangalore 2015
Mobile Automation Using Appium - vodQA Bangalore 2015
 
Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions		Live Panel: Appium Core Committers Answer Your Questions
Live Panel: Appium Core Committers Answer Your Questions
 
Wheat - Mobile functional test automation
Wheat - Mobile functional test automationWheat - Mobile functional test automation
Wheat - Mobile functional test automation
 
Beyond Appium: Testing with Espresso & the Real Device Cloud
Beyond Appium: Testing with Espresso & the Real Device CloudBeyond Appium: Testing with Espresso & the Real Device Cloud
Beyond Appium: Testing with Espresso & the Real Device Cloud
 
Appium tutorial| Appium Training
Appium tutorial| Appium Training Appium tutorial| Appium Training
Appium tutorial| Appium Training
 
Appium ppt
Appium pptAppium ppt
Appium ppt
 
Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)Appium overview (Selenium Israel #2, Feb. 2014)
Appium overview (Selenium Israel #2, Feb. 2014)
 
Appium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriverAppium Mobile Test Automation like WebDriver
Appium Mobile Test Automation like WebDriver
 
Parallel testing with appium
Parallel testing with appiumParallel testing with appium
Parallel testing with appium
 
Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?Mobile automation – should I use robotium or calabash or appium?
Mobile automation – should I use robotium or calabash or appium?
 
[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team[Srijan Wednesday Webinars] Building a High Performance QA Team
[Srijan Wednesday Webinars] Building a High Performance QA Team
 
Appium solution
Appium solutionAppium solution
Appium solution
 
Selenium Camp 2016
Selenium Camp 2016Selenium Camp 2016
Selenium Camp 2016
 
Testing Your Android and iOS Apps with Appium in Testdroid Cloud
Testing Your Android and iOS Apps with Appium in Testdroid CloudTesting Your Android and iOS Apps with Appium in Testdroid Cloud
Testing Your Android and iOS Apps with Appium in Testdroid Cloud
 
Introduction To Mobile-Automation
Introduction To Mobile-AutomationIntroduction To Mobile-Automation
Introduction To Mobile-Automation
 

Similar to Appium - Reality check on the world’s leading Open Source Framework for Mobile Testing

Mobile Apps Delivery - Evolution and Tools
Mobile Apps Delivery - Evolution and ToolsMobile Apps Delivery - Evolution and Tools
Mobile Apps Delivery - Evolution and ToolsAsaf Saar
 
Mobile application development platform
Mobile application development platformMobile application development platform
Mobile application development platformi4consulting.org
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesPhong Le Duy
 
Cross platform mobile apps using rhomobile and jquery mobile
Cross platform mobile apps using rhomobile and jquery mobileCross platform mobile apps using rhomobile and jquery mobile
Cross platform mobile apps using rhomobile and jquery mobileSPRITLE SOFTWARE PRIVATE LIMIT ED
 
Mobile Enablement And Intelligence
Mobile Enablement And IntelligenceMobile Enablement And Intelligence
Mobile Enablement And IntelligenceRashmika Nawaratne
 
Demystifying the Mobile Container - PART I
Demystifying the Mobile Container - PART IDemystifying the Mobile Container - PART I
Demystifying the Mobile Container - PART IRelayware
 
Using Selenium To Test Mobile? Meet Appium!
Using Selenium To Test Mobile? Meet Appium!Using Selenium To Test Mobile? Meet Appium!
Using Selenium To Test Mobile? Meet Appium!Sauce Labs
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin PlatformRui Marinho
 
Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?iFactory Digital
 
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using PhonegapDroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using PhonegapAyushman Jain
 
Hybrid app development
Hybrid app developmentHybrid app development
Hybrid app developmentHarshul Shah
 
Launch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyLaunch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyManish Lachwani
 
Mobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMoataz Nabil
 
Saurabh_Gupta_Resume(iOS)
Saurabh_Gupta_Resume(iOS)Saurabh_Gupta_Resume(iOS)
Saurabh_Gupta_Resume(iOS)saurabh gupta
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicKadhem Soltani
 
Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentÖzcan Zafer AYAN
 

Similar to Appium - Reality check on the world’s leading Open Source Framework for Mobile Testing (20)

Mobile Apps Delivery - Evolution and Tools
Mobile Apps Delivery - Evolution and ToolsMobile Apps Delivery - Evolution and Tools
Mobile Apps Delivery - Evolution and Tools
 
Mobile application development platform
Mobile application development platformMobile application development platform
Mobile application development platform
 
Native - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile ArchitecturesNative - Hybrid - Web Mobile Architectures
Native - Hybrid - Web Mobile Architectures
 
Cross platform mobile apps using rhomobile and jquery mobile
Cross platform mobile apps using rhomobile and jquery mobileCross platform mobile apps using rhomobile and jquery mobile
Cross platform mobile apps using rhomobile and jquery mobile
 
Mobile Enablement And Intelligence
Mobile Enablement And IntelligenceMobile Enablement And Intelligence
Mobile Enablement And Intelligence
 
Demystifying the Mobile Container - PART I
Demystifying the Mobile Container - PART IDemystifying the Mobile Container - PART I
Demystifying the Mobile Container - PART I
 
Using Selenium To Test Mobile? Meet Appium!
Using Selenium To Test Mobile? Meet Appium!Using Selenium To Test Mobile? Meet Appium!
Using Selenium To Test Mobile? Meet Appium!
 
Xamarin Platform
Xamarin PlatformXamarin Platform
Xamarin Platform
 
Mobile app vs web app
Mobile app vs web appMobile app vs web app
Mobile app vs web app
 
Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?Do You Need a Web App or a Native App?
Do You Need a Web App or a Native App?
 
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using PhonegapDroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
DroidCon 2011: Developing HTML5 and hybrid Android apps using Phonegap
 
Hybrid app development
Hybrid app developmentHybrid app development
Hybrid app development
 
Muhammad Hamdy_MSSWE
Muhammad Hamdy_MSSWEMuhammad Hamdy_MSSWE
Muhammad Hamdy_MSSWE
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
Launch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with AppurifyLaunch High Performing Mobile Apps with Appurify
Launch High Performing Mobile Apps with Appurify
 
Mobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and DockerMobile UI Testing using Appium and Docker
Mobile UI Testing using Appium and Docker
 
Saurabh_Gupta_Resume(iOS)
Saurabh_Gupta_Resume(iOS)Saurabh_Gupta_Resume(iOS)
Saurabh_Gupta_Resume(iOS)
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and Ionic
 
Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App Development
 

Recently uploaded

Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noidabntitsolutionsrishis
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 

Recently uploaded (20)

Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in NoidaBuds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 

Appium - Reality check on the world’s leading Open Source Framework for Mobile Testing

  • 1. Appium Reality check on the world’s leading Open Source Framework for Mobile Testing 4th Meetup of Mobile Apps Dev&Test May 26, 2015 Asaf Saar asaf.saar@tenkod.com www.tenkod.com
  • 2. Agenda 1. Intro 2. Evolution of Mobile 3. Appium Overview 4. Why Appium? 5. Reality Check
  • 3. About Me §  Asaf  Saar,  CEO  &  CTO  of  TenKod  Ltd.         §  20  years  of  professional  experience  in  So>ware  Engineering   §  Prior  to  TenKod,  8  years  at  SAP,  last  role  as  APO  of  SE   §  Agile  So>ware  Engineering    trainer,  coacher  and  mentor   §  Married  to  Merav  and  father  of  three   §  Astronomy  and  fast  cars  are  my  hobbies   http://il.linkedin.com/in/asafsaar asaf.saar@tenkod.com
  • 4. The world goes mobile TenKod enables organizations to maximize profit by changing the way mobile apps are being delivered!
  • 5.
  • 6. Evolution of Mobile - Devices §  1973  –  First  handheld  mobile  developed   §  1984  –  Nokia  talkman   §  1992  –  Motorola  InternaRonal  3200   §  1994  –  IBM  Simon  Personal  Communicator     §  1996  –  Motorola  Startac   §  1998  –  Nokia  5110   §  1999  –  BlackBerry  850     §  2007  –  iPhone   §  2008  –  Android  
  • 7. Evolution of Mobile - OS §  1973-­‐1993  –  Embedded  System  based  OS   §  1996  –  Palm  Pilot,  Windows  CE   §  2000  –  Symbian   §  2002  –  BlackBerry   §  2007  –  iOS,  Windows  Mobile   §  2008  –  Android   §  2009  –  webOS,  Bada,  Palm  OS   §  2011  –  Tizen   §  2012  –  Firefox  OS   §  2013  –  Ubuntu  Touch   World’s most popular OS and Smartphones till 2010…
  • 8. Mobile Development Landscape Development  Targets   §  OS  Level   §  NaRve   §  Web   §  Hybrid   Development  Landscapes   §  Single  developer   §  Team   §  Staging   §  Cloud   §  Hybrid   Development  Frameworks   §  Android  SDK   §  iOS  ObjecRveC/Swi>   §  Windows  Mobile  /  .NET   §  PhoneGap   §  Titanium  Appcelerator   §  Xamarin   §  Appery.io   §  Angular  UI   §  Sencha  Touch   §  ………  
  • 9. iOS Challenge §  15  DisRnct  Devices  (coun&ng  from  iPhone  4S…)   §  70%  of  users  adopt  latest  OS  within  6  months   §  8  DisRnct  screen  dimensions  
  • 10. §  18,796  DisRnct  Devices  (as  of  8/14…)   §  5%  of  users  adopt  latest  OS   §  150  DisRnct  screen  dimensions   Android Challenge
  • 11. Mobile is Mission Critical Source: Perfecto Mobile, Achieving Continuous Quality eBook §  Mobile  adopRon  is  growing  8  Rmes  faster  than  web   §  60%  of  online  traffic  now  originates  from  mobile  devices   §  73%  of  Millennials  are  transacRng  directly  from  mobile   §  More  than  80%  of  mobile  Rme  is  spent  within  naRve  apps   §  Windows  Phone  and  BlackBerry  devices  account  for  a  total   of  7%  in  EU5  and  4%  in  the  U.S.  
  • 12. Before we dive to Appium This  session  is  all  about  reading   between  the  lines  and  paying   a>en&on  to  details…  
  • 13. Appium Appium  is  an  open  source  test  automaRon   framework  for  use  with  naRve,  hybrid  and   mobile  web  apps.   http://appium.io/slate/en/master/?java#about-appium
  • 14. Why Appium? §  Mobile  Test  AutomaRon  for  iOS  and  Android   §  Automate  NaRve,  Web  and  Hybrid  apps   §  InstrumentaRon  free   §  Uses  standard  automaRon  libraries  of  Android  and  iOS   §  Support  for  any  WebDriver  compaRble  language   §  Use  any  TesRng  Framework  
  • 15. Appium GUI Appium  provides  two  desktop  apps  for  server  configuraRon,  UI   inspecRon  and  recording:   §  Mac  OS  –  for  Android  and  iOS   §  Windows  –  for  Android    
  • 16. Appium Inspector A  tool  part  of  the  Appium  GUI   Let  you  inspect  your  app’s  UI  and  record  user  acRons  
  • 18. The good §  Open  Source  tool  with  a  live  community   §  No  InstrumentaRon §  Server  is  fully  parameterized     §  Works  with  real  devices  as  well  as  simulators  and  emulators   §  WebDriver  &    Page  Objects  enable  cross  plaiorm  test  code   §  Appium  GUI  provides  a  good  kick  start  to  newbies   §  AutomaRc  code  generaRon  with  Inspector  
  • 19. Appium @ the real world, #1 Cable   &   Wireless   Communica&ons   is   a   Bri&sh   mul&na&onal   telecommunica&ons  company  headquartered  in  London,  United   Kingdom  with  opera&ons  in  the  US  and  Pan-­‐America.   Requirements:   1.  Automate  LIME  mobile  app  –  iOS  &  Android  NaRve  apps   2.  Conduct  scheduling  calling  from  iOS  &  Android  devices   across  the  US  and  Central  America,  log  calls  in  excel  file  and   later  compare  with  backend  system.   Appium is a NO GO for iOS
  • 20. Appium @ the real world, #2 LetMobile,   an   Israeli   startup   that   was   acquired   in   2014   by   LANDESK   SoSware,   it   provides   Secure   Mobile   E-­‐Mail   enables   employees  to  read  their  corporate  mail  from  any  mobile  device.   Requirements:   1.  Automate  LetMobile  app  on  iOS  &  Android:   Launch  LetMobile  app,  login  to  server,  install  iOS  security   profile  in  selngs  app,  switch  to  built-­‐in  iOS  Mail  app,  review   mail  content,  switch  back  to  LetMobile  app,  login  to  server,   switch  back  to  Mail  app  and  read  Mail  review  mail  content.   Appium is a NO GO for iOS
  • 21. The not so good – Setup Setup  is  a  bit  tedious   §  DocumentaRon  is  messy  and  not  up-­‐to  date   §  A  lot  of  prerequisites  and  manual  steps:   Java,  Android  SDK,  Maven  /  Ant,  Node.js,  Xcode,  Xcode,   Command  Line  Tools   §  Install  Brew/Homebrew,  NPM,  Appium  app,  Appium  Client   §  iOS  Real  device  setup  is  a  big  headache  
  • 22. The not so good – Usage Not  really  prime  Rme  ready   §  Android  and  IOS  only,  while  iOS  is  on  Mac  OS  only   §  iOS  is  based  on  Xcode  Instruments…   §  …  Hence  no  Parallel  iOS  test  execuRon  is  possible   §  iOS  automaRon  of  AUT  only,  NO  context  switch  is  possible   (put  app  in  background  is  NOT  stable)   §  Android  keyboard  can  not  be  automated  (Send  Keys  only)   §  Time  required  to  implement  robust  test  code  is  high §  Development  (OOP)  knowledge  is  a  must  
  • 23. The not so good – Appium GUI Appium  GUI  is     §  Not  a  standalone  automaRon  tool   §  Good  support  for  NaRve  apps   §  Yet  No  support  for  Web  and  Hybrid   §  No  Linux  version   §  Generated  code  relies  heavily  on  absolute  Xpaths   §  Can’t  automate  spinner  wheels,  noRficaRons,  toast   messages   §  And  it  is  VERY  buggy…  
  • 24. Tips for getting things running §  Internalize  that  Appium  is  a  framework  and  not  a  product   §  Internalize  that  Open  Source  does  cost  money   §  Pay  apenRon  to  details  before  diving  into  the  implementaRon   §  Implement  a  project  build  tool,  e.g.  Maven   §  Learn  WebDriver  API  and  Page  Objects  Design  Papern   §  Use  Chrome  Developer  Tools,  Firebug,  etc.  for  hybrid  and  web   §  Setup  parallel  tesRng  of  iOS  via  Mobile  Cloud  that  supports  it  
  • 25. Thank you! Copyright © 2015 TenKod Ltd. All rights reserved Asaf Saar asaf.saar@tenkod.com www.tenkod.com
  • 26. References  and  trademarks:   1.  TenKod  name,  logo  and  icon  are  trademarks  of  A.O.E  TenKod  Ltd.   2.  Amazon  AWS  name  and  logo  are  trademarks  of  Amazon  Web  Services,  Inc.  or  its   affiliates.   3.  Eclipse  name  and  logo  are  the  intellectual  property  of  the  Eclipse  FoundaRon.   4.  Sonatype  and  Sonatype  Nexus  are  trademarks  of  Sonatype,  Inc.   5.  Apache  Maven  and  Maven  are  trademarks  of  the  Apache  So>ware  FoundaRon.   6.  M2Eclipse  is  a  trademark  of  the  Eclipse  FoundaRon.   7.  Git  is  a  member  of  So>ware  Freedom  Conservancy   8.  All  other  trademarks  are  the  property  of  their  respecRve  owners.