What Is Appium?
Appium is mobile web, native and
hybrid software application test automation tool developed and
supported by Sauce Labs .
It is
open-source software automation tool which is useful to automate android
and IOS platform apps.
Most important
thing is : Appium is “cross-platform”
automation tool so you can write software automation tests against iOS and
Android (multiple platforms) using same API.
“cross-platform”
enables you large amount of code reuse between iOS and Android test
suites.
Appium is
developed on few key philosophy points :
1.
Should not have
to recompile your app to automate it.
2.
Should not be
locked into a specific language or framework.
3.
Should be open
source
4.
Should not
reinvent the wheel when it comes to automation APIs.
How
is Appium built?
Appium is
basically an HTTP server written in Node.js® that creates
and handles webdriver sessions.
Node.js® is
a platform built on Chrome’s
JavaScript runtime for easily building fast, scalable network
applications. Node.js uses an event-driven, non-blocking I/O model that makes
it lightweight and efficient, perfect for data-intensive real-time applications
that run across distributed devices.
Appium architecture
As Appium is
an HTTP server, its performs pretty much same as Selenium
Webdriver server by
·
Receiving
request/commands from client libraries*
·
Executes the
command on the target devices/emulators
·
Responds with
an HTTP response
Hence Appium works
as a Client/Server architecture.
Appium Desired
capabilities?
Desired
Capabilities are sent by the Client to Server via JSON
Objects by requesting the automation session we need.
These desired
capabilities are found in the link below
Why Need
Appium?
If you are
mobile app software test engineer, Appium can makes your mobile app regression
testing task easy. Specially for large mobile apps where continues apps are
updating with new features and functionalities. Another main benefit of using
appium for mobile app automation is : It supports bellow given multiple
platforms and languages. Also you can use any testing framework.
Multiple
Platforms Support
Appium support
bellow given different platforms.
Android
IOS
FirefoxOS
Multiple
Languages Support
Appium supports
bellow given languages with the Selenium WebDriver API and
language-specific client libraries.
Java
Objective-C
JavaScript with
Node.js
PHP
Python
Ruby
C#
Clojure
Perl
Also there are
other advantages like no source code is needed to test app as you can test it
directly, also you can engage built in apps like camera, calendar etc in your
test script if required.
Limitations Of Appium
There are few limitation in appium right now.
Limitations Of Appium
There are few limitation in appium right now.
l
For Android, No
Support for Android API level < 17.
l
Script
execution is very slow on IOS platform.
l
Gestures
support is limited.
l
No support for
Toast messages
.
I think, this
is enough to use any open source software automation testing tool in terms of
usage flexibility.
Note :
Appium supports only Android 17+ API level versions. Otherwise you need to use
selendroid. You can find API level for your phone based on its version
No comments:
Post a Comment