Python公开课 - Appium基本介绍
Appium 基本介绍
Appium 是一个在移动设备上进行自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用、web应用及混合应用。
- 移动原生应用 - 主要就是通过系统的sdk来开发的APP。
- 移动web应用 - 指使用移动浏览器访问的应用。
- 混合应用 - 指原生代码封装网页视图原生代码和 web 内容交互。
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 |