1、搭建Android环境
http://blog.csdn.net/jlminghui/article/details/39582895
注:需要设置系统变量“ANDROID_HOME”。
2、安装Node.js
http://www.nodejs.org/download/
下载相关操作系统的版本
安装过程,一路“Next”。
3、安装Appium
(1)下载地址:http://appium.io/ 下载完毕后解压到pc本地,将压缩包里有appium.cmd文件的路径设置到环境变量path中。
(2)进入命令行,输入appium-doctor
另外也可在线安装(可选,网络不好还是选上面的好些)
(1)进入命令行
(2)输入命令:npm install -g appium
注:翻墙下载比较靠谱
(3)等待更新完毕
(4)安装后验证:appium-doctor
4、创建虚拟机或使用实际设备
创建一个4.4.2的虚拟机
不熟悉这块的朋友参考:http://blog.csdn.net/jlminghui/article/details/39582895
5、创建Java工程(Eclipse)
(1)导入Selenium类库
http://selenium-release.storage.googleapis.com/2.44/selenium-java-2.44.0.zip
http://selenium-release.storage.googleapis.com/2.44/selenium-server-standalone-2.44.0.jar
(确认2014.11.14有效,如无效请访问http://docs.seleniumhq.org/download/ 进行下载 )
注:需要导入两个,一个是客户端,一个是服务端,服务端库不导入会导致运行时报错。
(2)导入Appium类库
https://search.maven.org/remotecontent?filepath=io/appium/java-client/1.2.1/java-client-1.2.1.jar
(确认2014.11.14有效,如无效请访问http://appium.io/downloads.html 进行下载 )
注:此处如果选择下载最新的2.0以上的版本,会导致编译new
AppiumDriver时报错。解决办法见:
http://blog.csdn.net/zhubaitian/article/details/39717889
6、运行Appium示列
(1)下载示例程序
https://github.com/appium/sample-code/tree/master/sample-code/apps/ContactManager
上面链接中下载ContactManager.apk
并将该apps放到当前项目的apps目录下(目录自行创建)
(2)下载示例程序测试
java文件为“AndroidContactsTest.java”
内容经过更改如下
- package com.Demo;
- import io.appium.java_client.AppiumDriver;
- import org.junit.After;
- import org.junit.Before;
- import org.junit.Test;
- import org.openqa.selenium.By;
- import org.openqa.selenium.WebElement;
- import org.openqa.selenium.remote.CapabilityType;
- import org.openqa.selenium.remote.DesiredCapabilities;
- import java.io.File;
- import java.net.URL;
- import java.util.List;
- public class AppDemo {
- private AppiumDriver driver;
- @Before
- public void setUp() throws Exception {
- // set up appium
- File classpathRoot = new File(System.getProperty("user.dir"));
- File appDir = new File(classpathRoot, "apps");
- File app = new File(appDir, "ContactManager.apk");
- DesiredCapabilities capabilities = new DesiredCapabilities();
- capabilities.setCapability(CapabilityType.BROWSER_NAME, "");
- capabilities.setCapability("platformName", "Android");
- capabilities.setCapability("deviceName","Android Emulator");
- capabilities.setCapability("platformVersion", "4.4");
- capabilities.setCapability("app", app.getAbsolutePath());
- capabilities.setCapability("appPackage", "com.example.android.contactmanager");
- capabilities.setCapability("appActivity", ".ContactManager");
- driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
- }
- @After
- public void tearDown() throws Exception {
- driver.quit();
- }
- @Test
- public void addContact(){
- WebElement el = driver.findElement(By.name("Add Contact"));
- el.click();
- List<WebElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");
- textFieldsList.get(0).sendKeys("Some Name");
- textFieldsList.get(2).sendKeys("Some@example.com");
- driver.swipe(100, 500, 100, 100, 2);
- driver.findElementByName("Save").click();
- }
- }
(3)启动android4.4.2虚拟机
(4)命令行启动后输入:appium
(5)项目右键>“Run As”>“JUnit Test”(选择Eclipse JUnit Launcher)
以上步骤确认可以运行成功,但由于笔者也是刚接触Appium,可能存在遗漏,也请大家帮忙指出,另外也可以使用maven和相关Eclipse插件会更方便些,网上例子很多可自行查找。