一、appium介绍
appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,web应用和混合应用。
-
原生应用程序是某一个移动平台(比如iOS或安卓)所特有的,使用相应平台支持的开发工具和语言(比如iOS平台支持Xcode和Objective-C,安卓平台支持Eclipse和Java)。原生应用程序看起来(外观)和运行起来(性能)是最佳的。
-
移动web应用程序(HTML5应用程序)通常使用HTML5、JavaScript和CSS技术。这种只编写一次、可到处运行的移动开发方法构建的跨平台移动应用程序可以在多个设备上运行。但存在一些重大的局限性,具体包括会话管理、安全离线存储以及访问原生设备功能(摄像头、日历和地理位置等)。
-
混合应用是指原生代码封装网页视图——原生代码和 web 内容交互。比如,像 Phonegap,可以帮助开发者使用网页技术开发应用,然后用原生代码封装,这些就是混合应用。
特点:
(1)appium支持多语言(Java、Python、Ruby等)进行appium脚本编写;
(2)appium支持多平台,包括Mac和Window。它针对这两大平台开发了appium-server;
(3)appium支持Android和iOS系统。
二、appium工作原理
appium选择了Client/Server的设计模式。
Appium-Client --> Appium-Server --> 移动设备
Appium-Client | Appium-Server | 移动设备 |
Java-Client | appium.dmg | Android模拟器 |
Python-Client | AppiumForWindow.zip | Android真机 |
Ruby-Client | iOS真机 | |
...... |
当在MAC平台上,通过Python(python-client )编写了一个appium自动化脚本并执行,请求会首先到 appium.dmg(MAC下的appium-Server),appium-Server通过解析,驱动iOS真机来执行appium自动化脚本。
或在Windows平台上,通过Java( java-client )编写了一个appium自动化脚本并执行,请求会首先到 appiumForWindow.zip(Window下的appium-Server),appium-Server通过解析,驱动Android模拟器或真机来执行appium脚本。
三、Appium环境搭建(针对python+appium)
包括jdk、android-sdk、python、appium-server、Node.js、Appium-Python-Client,可百度搜索搭建教程。
附:https://www.cnblogs.com/yoyoketang/p/6128725.html