Appium 介绍及环境安装

Appium是一个可用于测试iOS、 Android操作系统和Windows桌面平台原生应用,移动网页应用和混合应用的自动化测试框架。

  • 原生应用(Native App):用 android、iOS或者Windows SDK编写的应用

  • 移动网页应用(Web App):通过手机浏览器访问的网页应用,比如iOS中 safari应用,Android上的Chrome应用或者内置浏览器应用,不会占用手机的存储空间。

  • 混合应用(Hybrid App):同时具备Native App和Web App的特性,一种 webview应用,将Javascript,HTML和CSS执行在embedded webview中,外层用Native App wrapper包起來。

Appium 跨语言支持:Java、 Python、 Ruby、JavaScript (Node.js)、PHP、C# (.NET)、RobotFramework等,Appium是跨平台的,可以用在OSX,Windows以及Linux桌面系统上运行。

Appium架构

WebDriver

Selenium Webdriver API实现脚本语言与浏览器之间的通信,是一个远程控制接口,可参考Selenium Webdriver 架构。 Webdriver定义的JSON Wire Protocol(JSON有线协议)实现selenium客户端与remote server(浏览器驱动的HTTP服务器)的交互,remote server将命令发送给浏览器,实现浏览器的native调用。

WebDriver协议可参考官方文档:https://w3c.github.io/webdriver/

Appium WebDriver对Selenium Webdriver协议进行了扩展(Mobile JSON Wire Protocol),Appium 客户端通过Webdriver协议与Appium Server进行交互。

Appium引擎列表

为了不重新编译或修改应用,Appium 使用系统自带的自动化框架:
Android 4.3+

  • UIAutomator
  • UIAutomator2[推荐]

iOS

  • UIAutomation (iOS ≤ 9.3)
  • XCUITest[推荐] (iOS ≥ 9.3)

Windows:

  • WinAppDriver

Appium的设计理念

Client/Server设计模式

Appium采用 C/S架构,Appium与客户端建立连接并监听命令,然后在移动设备上执行这些命令,命令执行结果通过 HTTP 响应的方式返回。客户端通过 WebDriver json wire协议与服务端通讯。由于Appium的这种特性,我们可以将Appium server放在与测试机不同的机器上。Appium Server是使用 Node.js 编写的HTTP服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值