您的位置:首页 > 移动开发

appium java 环境搭建

2016-03-24 15:12 489 查看
appium是一款open source 移动自动化测试框架,既支持Android 也支持IOS。
appium 基于webdriver协议执行测试脚本。
今天,如炒剩饭,介绍一下搭建appium Android环境
需要:
appium windows 版,目前版本为1.4  https://bitbucket.org/appium/appium.app/downloads/
Android SDK ,自行下载
selenium selenium-server-standalone-2.46.0.jar
java-client
Node js  Current version: v0.12.4     https://nodejs.org/download/
首先,下载安装appium for windows,在环境变量path添加";C:\Program Files\nodejs;C:\Program Files (x86)\Appium\node_modules\.bin;"
接下来 安装node js,安装完毕再环境变量path 添加安装路径“;C:\Program Files\nodejs”
验证 node js:在命令行输入node -v,会输出v0.12.4
然后安装Android SDK,并添加环境变量:ANDROID_HOME



并在path添加";%ANDROID_HOME%\platform-tools"
验证 appium:在命令行输入appium-doctor,如果结果如下,证明 环境搭建成功



接下来可以在eclipse创建一个java project
在project 新建apps的folder 把ContactManager.apk copy进去
 
注意, 本文使用Testng,不是eclipse自带的junit,自行百度
添加appium example:

package com.dbyl.core;

import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.remote.CapabilityType;
import org.openqa.selenium.remote.DesiredCapabilities;

import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;

import io.appium.java_client.android.AndroidDriver;

import java.io.File;
import java.net.URL;
import java.util.List;

public class AppDemo {
private  AndroidDriver  driver;

@BeforeMethod(alwaysRun=true)
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 AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}

@AfterMethod(alwaysRun=true)
public void tearDown() throws Exception {
driver.quit();
}

@Test(groups={"addContact"})
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(1).sendKeys("10086");
textFieldsList.get(2).sendKeys("Some@example.com");
driver.swipe(100, 500, 100, 100, 2);
driver.findElementByName("Save").click();
}
}


如果,你看到一片报错,那就对了,说明相关依赖包并没有导入。
这时候,你需要将以下2个jar 包import(selenium-standalone 和 java-client)



若执行case,首先在启动一个本地的Android模拟器
然后在命令行输入:appium
等待命令行出现以下提示:



然后run as testng test
大功告成
相关资料: ContactManager.apk 下载地址:http://pan.baidu.com/s/1i3KlNrZ
           java-client 2.2 : http://pan.baidu.com/s/1pJ7Opsv
              selenium standalone 4.6:http://pan.baidu.com/s/1qWE7SD2
  
 

转载请注明出处:http://www.cnblogs.com/tobecrazy/ 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: