Appium is clearly the world leading framework for mobile apps test automation. Adoption of Appium is in constant rise, and for the good reasons.
Yet, in many cases those who do their initial steps or even progressing with the framework realize that the world is not that simple, challenges arise, limitations are discovered and one can find himself wondering whether the right decision was taken in investing the time and money into it (yes... open source cost you money).
In this talk we will pause for a while, review why Appium is an outstanding framework, while also do a reality check of the cons and pros of Appium, helping you make the best out of it, or at least have a clear understanding of what's ahead of you.
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
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
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
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.