Appium简介

  Appium是一个开源工具,用于自动化iOS手机、Android手机和Windows桌面平台上的原生、移动Web和混合应用。

原生应用:指那些用iOS、Android或者WindowsSDK编写的应用。如安卓自带的计算器等;

移动Web应用:是用移动端浏览器访问的应用(Appium支持iOS上的Safari、Chrome和Android上的内置浏览器)。如手机百度网等;

混合应用:带有一个「webview」的包装器——用来和Web内容交互的原生控件。如腾讯新闻、淘宝app等。

  Appium是跨平台的:它允许你用同样的API对多平台(iOS、Android、Windows)写测试。做到在iOS、Android和Windows测试套件之间复用代码。

Appium的理念

  Appium旨在满足移动端自动化需求的理念,概述为以下四个原则:

你不应该为了自动化而重新编译你的应用或以任何方式修改它。

你不应该被限制在特定的语言或框架上来编写运行测试。

移动端自动化框架不应该在自动化接口方面重造轮子。

移动端自动化框架应该开源,在精神、实践以及名义上都该如此。

Appium的优势

可以跨平台同时支持Android、iOS;

支持多种语言,java、python、php、Ruby等等;

Appium相关组件

Appium Server:

  Appium Server就是Appium的服务端——一个web接口服务,使用Node.js实现。

Appium-Desktop:

  Appium Desktop是一款适用于Mac,Windows和Linux的开源应用程序,它以美观而灵活的用户界面为您提供Appium自动化服务器的强大功能。

AppiumClient:

  因为Appium是一个C/S结构,有了服务端的肯定还有客户端,Appium Client 就是客户端,它会给服务端 Appium Server 发送请求会话来执行自动化任务。就像我们浏览器访问网页,浏览器是客户端,通过操作发送请求服务器来获取数据。我们可以使用不同的客户端浏览器(IE,Firefox,Chrome)访问一个网站。Appium客户端可以使用不同的语言来实现,如Python,java等。