appiumappium入门


备注

Appium是一个开源的跨平台测试自动化工具,适用于本机,混合和移动Web应用程序,在模拟器(iOS,FirefoxOS),模拟器(Android)和真实设备(iOS,Android,FirefoxOS)上进行测试。

为什么选择Appium?

  1. 由于在所有平台上使用标准自动化API,您无需以任何方式重新编译应用程序或对其进行修改。
  2. 由于在所有平台上使用标准自动化API,您无需以任何方式重新编译应用程序或对其进行修改。您可以使用任何与WebDriver兼容的语言(例如JavaObjective-C ,带有Node.js的JavaScript( 承诺,回调生成器风格),PHP, PythonRubyC# ,Clojure或Perl)使用您喜欢的开发工具编写测试。使用Selenium WebDriver API和特定于语言的客户端库。
  3. 您可以使用任何测试框架。

投资WebDriver协议意味着您打算采用单一,免费且开放的测试协议,这已成为事实上的标准。不要将自己锁定在专有堆栈中。

如果您在没有Appium的情况下使用Apple的UIAutomation库,您只能使用JavaScript编写测试,并且您只能通过Instruments应用程序运行测试。同样,使用Google的UiAutomator,您只能用Java编写测试。 Appium开辟了真正的跨平台原生移动自动化的可能性。

这个怎么运作

Appium驱动各种原生自动化框架,并提供基于Selenium的WebDriver JSON有线协议的API。

Appium推出Apple的UIAutomation库,用于iOS 10之前的版本,该版本基于Dan Cuellar在iOS Auto上工作。随着UIAutomation库的弃用,所有iOS 10和未来版本都由XCUITest框架驱动。

Android支持使用UiAutomator框架用于较新的平台,而Selendroid用于较旧的Android平台。

FirefoxOS支持利用Marionette ,这是一个与WebDriver兼容的自动化驱动程序,用于自动化基于Gecko的平台。

版本

发布日期
1.6.3 2016年12月12日
1.6.2 2016年12月2日
1.6.1 2016年11月24日
1.6.0 2016年10月10日
1.5.3 2016年6月7日
1.5.2 2016年4月20日
1.5.1 2016年3月29日
1.5.0 2016年2月26日
1.4.16 二零一五年十一月二十零日
1.4.15 二零一五年十一月十八日
1.4.14 2015年11月6日
1.4.13 2015年9月30日
1.4.11 2015年9月16日
1.4.10 2015年8月7日
1.4.8 2015-07-17
1.4.7 2015年7月2日
1.4.6 2015年6月19日
1.4.3 2015-06-25
1.4.1 2015年5月21日
1.4.0 2015年5月9日
1.3.7 2015年3月25日
1.3.6 2014年12月1日

安装或设置

前要求

检查您希望自动化的每种设备类型的要求,并确保在尝试使用Appium之前安装它们!

iOS要求

Android要求

  • Android SDK API> = 17(其他功能需要18/19)

  • Appium支持OS X,Linux和Windows上的Android。确保按照正确设置环境的说明进行测试,以便在不同的操作系统上进行测试:

FirefoxOS要求


安装Appium

使用Node.js进行全局安装

$ npm install -g appium
$ appium
 

Github主分支机构的本地安装

$ git clone git@github.com:appium/appium.git
$ cd appium
$ npm install
$ node .
 

使用App for Mac或Windows

为Appium编写测试

可以在此处找到Appium 文档的格式化版本,并可以从右上角选择代码示例语言。

推出适用于Android平台的Appium并创建样本测试

环境设置:

前提条件:

  • 确保从www.eclipse.org/downloads/下载Eclipse
  • 安装java(jdk和jre)
  • android sdk已安装
  • 确保设置了Java,Android SDK,平台和平台工具的环境变量(Path)。

在Windows操作系统上设置路径的步骤:右键单击“我的电脑”。 “属性”左侧面板“高级系统设置”选择环境变量系统变量 - >类型路径 - >“路径”双击输入系统中JAVA jdk的路径,然后按(;)然后输入您的路径android sdk(;)路径到您的Android平台(;)路径到您的Android平台工具 - >单击确定。

  • 确保已安装Eclipse插件

安装适用于Android的Eclipse插件的步骤:启动Eclipse,然后选择“帮助”>“安装新软件”。 单击右上角的“添加”。 在显示的“添加存储库”对话框中,为“名称”输入“ADT插件”,并为位置输入以下URL: https: //dl-ssl.google.com/android/eclipse/单击“确定”(如果您在获取时遇到问题)插件,尝试在位置URL中使用“http”,而不是“https”(出于安全原因,首选https)。

  • 确保设置了ANDROID_HOME变量。

设置ANDROID_HOME变量的步骤:转到顶部面板上的Eclipse->窗口 - >首选项 - >双击左侧面板上的Android在Android首选项中,复制SDK位置右键单击“我的电脑”。 “属性”左侧面板“高级系统设置”选择环境变量在顶部用户变量 - >选择新建 - >变量名称,输入ANDROID_HOME,变量路径 - >从Eclipse输入复制的SDK位置 - >单击确定然后系统变量 - >选择新建 - >变量名称,输入ANDROID_HOME,变量路径 - >从Eclipse输入复制的SDK位置 - >单击确定退出

  • 确保可以启动Android虚拟设备管理器。 Eclipse->顶部面板上的窗口 - > Android Virtual Device Manager->单击现有虚拟设备(如果存在)/创建具有自定义配置的新设备.->单击窗口右侧面板上的“开始”.->发射

启动Appium:

  • 安装node.js(“ http://nodejs.org/ ”)。
  • 从以下位置从命令行启动Appium:转到Appium文件夹node_modulesappiumbinshift+右键单击open命令提示符typenodeappiumenter

应显示以下内容:info:欢迎使用Appium v​​1.3.4(REV c8c79a85fbd6870cd6fc3d66d038a115ebe22efe)info:Appium REST http接口监听器在0.0.0.0:4723上启动信息:Console LogLevel:debug info:Appium REST http接口监听器在0.0.0.0上启动: 4723info:Console LogLevel:debug

编写程序以在Eclipse中启动Appium:package appium.com;

import java.net.MalformedURLException; import java.net.URL;

import org.openqa.selenium.remote.CapabilityType; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.remote.RemoteWebDriver;

public class AppiumLaunch {public static void main(String args [])抛出MalformedURLException {RemoteWebDriver驱动程序; DesiredCapabilities capabilities = new DesiredCapabilities();

capabilities.setCapability("platformName", "Android");
capabilities.setCapability("deviceName","");

capabilities.setCapability("version","4.4.2");
capabilities.setCapability("device ID","");
capabilities.setCapability("app-package","");
capabilities.setCapability(CapabilityType.BROWSER_NAME, "");                                                
capabilities.setCapability("app-activity","");
capabilities.setCapability("takesScreenshot",true);

capabilities.setCapability("app","C:/Users/.......apk");

driver=new RemoteWebDriver( new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
System.out.println("app is launched on the device");
 


}
 

}

  • 确保系统中apk文件的路径正确无误
  • 确保系统中apk文件的路径在程序中是正确的。使用正确的包和活动,可以通过反编译apk文件找到。要反编译apk文件,请访问http://www.decompileandroid.com

为Android启动appium的步骤:

  1. 首先在命令提示符下或通过运行appium.exe文件启动appium服务器。
  2. 检查设备是否已连接并显示在adb:adb设备中
  3. 在Eclipse上执行程序。该程序将被执行,并且设备中安装的.apk文件将启动该应用程序。