Python公开课 - Appium基本介绍

Appium 基本介绍

Appium 是一个在移动设备上进行自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用、web应用及混合应用。

  • 移动原生应用 - 主要就是通过系统的sdk来开发的APP。
  • 移动web应用 - 指使用移动浏览器访问的应用。
  • 混合应用 - 指原生代码封装网页视图原生代码和 web 内容交互。

Appium基本介绍

Appium在爬虫项目中的优势

Appium 可以模拟 App 内部的各种操作,如点击、滑动、文本输入等,只要我们手工操作的 动作 Appium 都可以完成。

我们都知道Selenium是一个网页端的向动化测试工具,Appium 和它的工作原理非常类似。 在 iOS 设备上, Appium 使用 UIAutomation 来实现驱动;在 Android 设备上,它使用 UiAutomator 和 Selendroid 来实现驱动。

Appium 相当于一个服务器,我们可以向 Appium 发送一些操作指令, Appium 就会根据不同的指令对移动设备进行驱动,完成不同的动作。 和 Selenium 的方式一致,可以使用 Appium 实现可见即可爬的效果。

Appium平台优势

Appium 是跨平台的,可以用在 Windows、OSX和Linux系统上运行。

appium选择了Client/Server的设计模式。只要client能够发送 HTTP 请求给server,那么的话client用什么语言来实现都是可以的,这就是appium及Selenium(WebDriver)如何做到支持多语言的原因。

语言/框架 Github地址
Ruby https://github.com/appium/ruby_lib
Python https://github.com/appium/python-client
Java https://github.com/appium/java-client
JavaScript (Node.js) https://github.com/admc/wd
Objective C https://github.com/appium/selenium-objective-c
PHP https://github.com/appium/php-client
C# (.NET) https://github.com/appium/appium-dotnet-driver
RobotFramework https://github.com/jollychang/robotframework-appiumlibrary