When exploring automation for Android with running appium server, I noticed using selenium webdriver my code works fine. In a previous example, I saw appium driver for ios automation. So what is the basic difference with selenium or appium webdriver?
4 Answers
Both Selenium and Appium implement WebDriver - W3C standard protocol for browser automation (Selenium was first and is basis for coming standard). IOW your selenium webdriver scripts should be able to work with both Selenium and Appium.
Selenium is implemented in Java, Appium in JavaScript (which has nothing common in Java, name was a marketing ploy). Both have binding (WebDriver) for many languages (so you can use either from many languages), but if you are in 1% who want to hack on the core, one is in Java other is in JS. For 99% people who use them via WebDriver bindings and language of choice, implementation language makes little difference.
Selenium is concerned about automation of browsers but not native desktop apps. Appium is aimed at both (so Appium drivers need to drive also native apps, need to implement also actions like swipe, pinch etc).
Selenium Webdriver-Selenium is a automation tool, its used for web applications testing. its open sources tool were in you can download and start using.
Appium - Appium is also a automation tool, were in its used for mobile applications testing (android/iOS application).
-
Thanks for your useful comment, but in a case with appium server running and with selenium method, i can run a test. I was just thinking, does appium convert selenium command to appium . Commented Aug 20, 2017 at 10:43
Selenium Webdriver -
- Support mobile web applications only
- WebDriver has become the de facto standard for automating web browsers, and is a W3C Working Draft.
Appium Webdriver -
- Support native and hybrid mobile apps
- This class inherits from the RemoteWebDriver class, but it adds in additional functions that are useful in the context of a mobile automation test through the Appium server. refer
First of all, as some people mentioned, Selenium is the framework for doing Web automation (Chrome, Firefox etc) and Appium is for doing native app automation (iOS and Android app automation)
Secondly, both use similar methods and functions, as Appium is basically selenium but for mobile apps.
E.g.sendKeys() - It is the same for both Appium and Selenium
findByClassName(), findByElementId(), findByXPath() are both common to Appium and Selenium.
So based on what you are trying to automate you will decide to use Appium or Selenium
-Raj
-
Would be useful to list the DIFFERENCES between Selenium and Appium Commented Jul 2, 2019 at 14:22