Appium Beginner (1)--appium Introduction

Source: Internet
Author: User
Tags appium

Excerpt from: http://www.testclass.net/appium/appium-base-summary/

1. Features

Appium is an automated testing open source tool that supports native applications, Web applications, and hybrid applications on IOS and Android platforms.

    • "Mobile native apps" refers to apps written using iOS or the Android SDK (application abbreviation app).
    • "Mobile web Apps" refers to apps that are accessed using a mobile browser (Appium supports both Safari on iOS and Chrome on Android).
    • "Hybrid apps" refers to native code encapsulating Web page views-native code and Web content interaction. For example, like Phonegap, you can help developers develop applications using web technologies and then encapsulate them in native code, which is a hybrid application.

Importantly, Appium is a cross-platform tool: It allows testers to use the same set of APIs to write automated test scripts on different platforms (Ios,android), which greatly increases the reusability of code between IOS and Android test suites.

2, Appium and Selenium

The Appium class library encapsulates the standard selenium client class library, providing users with all the common JSON format selenium commands, as well as additional mobile device control-related commands, such as multitouch gestures and screen orientation.

The Appium client class Library implements an element of the mobile JSON Wire Protocol (an official extended draft of a standard protocol) and the Webdriver spec (a transport-unpredictable automation protocol that defines the Multiaction interface).

The Appium server defines an extension of the official protocol, providing a convenient interface for Appium users to perform a variety of device actions, such as installing/uninstalling the app during testing. That's why we need to appium a specific client, not a generic selenium client. Of course, the Appium client class library only adds some functionality, but in fact these functions simply extend the selenium client, so they can still be used to run a common selenium session.

3. Support multi-platform, multi-language

The Appium is cross-platform and can be run on Osx,windows and Linux desktop systems.

Appium selected the design mode of Client/server. As long as the client can send HTTP requests to the server, then it is possible for the client to be implemented in any language, which is why Appium and Selenium (webdriver) can support multiple languages;

Appium extended the Webdriver protocol without having to go back to a set of implementations. The advantage is that the previous Webdriver API can be inherited directly, the previous selenium (webdriver) All kinds of language binding can be used, eliminating the effort to develop a client for each language;

Language/Framework

Github Address

Python

Https://github.com/appium/python-client

Java

Https://github.com/appium/java-client

4. Appium Working principle

Before installing and introducing Appium, it is very necessary to introduce how Appium works.

The above diagram simply shows the appium of the tool.

First, Appium supports multiple languages because it develops corresponding appium libraries for several languages of the stream. The advantage is that we can choose the language we are familiar with to write Appium scripts.

Second, Appium supports multiple platforms, including Mac and Windows. It developed the appium-server for these two big platforms.

Finally, Appium supports both Android and iOS two operating systems.

This makes appium very flexible.

When I write a appium automation script and execute it through Python (python-client ) on the Mac platform, the request is first to Appium.dum (Appium-server under Mac), Appium-server uses parsing to drive iOS devices to execute Appium automation scripts. Or, on the Windows platform, I wrote a appium automation script and executed it through Java ( java-client ), and the request first went to Appiumforwindow.zip (Appium-server under Window), Appium-server uses parsing to drive an Android virtual machine or a real machine to execute appium scripts.

So, you'll see that Appium's strength lies here.

5. What do you need to install?
    • Programming Language: Python
    • Appium client:appium-python-client
    • Appium Server
    • Test Run environment

An android emulator, or an Android phone, or an iPhone

Appium Beginner (1)--appium introduction

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.