Appium was designed to meet mobile automation needs, Appium’s four-point philosophy:
1. You shouldn't have to recompile your app or modify it in any way in order to automate it.
Appium works by interfacing with these vendor-provided automation frameworks, translating your test code into the platform-specific interactions.
2. You shouldn't be locked into a specific language or framework to write and run your tests.
Appium allows writing tests in Ruby, Python, Java, Node.js, Objective-C, PHP, and C#. Therefore, you need not learn any new language/framework to use it. Appium Implements WebDriver. One of the great features of WebDriver is that you can write your test code in your language of choice, since there are WebDriver client libraries for pretty much every popular language out there. The code you write represents the actions users perform on your application under test, and WebDriver can be used with most test runners and frameworks, so chances are your Appium tests can simply be added to your team’s existing workflows.
3. A mobile automation framework shouldn't reinvent the wheel when it comes to automation APIs.
Because Appium implements the WebDriver API, you don’t need to reinvent that wheel. Because WebDriver is so widely used, you can choose any language and test framework and thus incorporate Appium tests easily into your existing process.
4. A mobile automation framework should be open source, in spirit and practice as well as in name!
Appium is an open-source tool, so as per the requirement users can freely modify. Appium is proudly Open Source and hosted on GitHub. With so many commits, issues closed, pull requests, forks, stars and contributors, Appium is a hotbed of excitement and activity in the open source world. The results are spectacular!