Appium入门示例(Java)

Posted Sunny*

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium入门示例(Java)相关的知识,希望对你有一定的参考价值。

一、环境准备

见我另一篇文章:http://www.cnblogs.com/sunny-sl/p/6519604.html

二、使用Eclipse直接创建案例工程

  1、打开Eclipse,【File】-->【New】-->【Project】

  2、选择【Java Project】-->【Next】

  3、输入工程名称Appium_demo,点击【Finish】

  4、右键点击工程 New-Folder,新建两个文件夹:apps和libs,目录结构如下:

     

三、导入测试的类库

  1、导入Selenum类库:http://docs.seleniumhq.org/download/

    1) selenium-server-standalone-2.44.0.jar

    2) selenium-java-2.44.0.zip

  2、导入Appium类库:

    1) java-client-1.2.1.jar 

  3、右键点击工程空白处,选择【Build Path】-->【Configure Build Path】 

、下载测试APK 

  1、下载测试的文件ContactManager.apkhttps://github.com/appium/sample-code/tree/master/sample-code/apps/ContactManager

  2、将下载的apk放到项目的apps目录下 

五、建立package包和案例文件

  1、在src文件夹上右键单击,【New】-->【package】,输入包名:com.dan.demo,点击【Finish】

  2、在package下新建类:Demo1.java,如下:  

 1 package com.dan.demo;
 2 
 3 import java.net.MalformedURLException;
 4 import java.net.URL;
 5 import java.util.List;
 6 import java.util.concurrent.TimeUnit;
 7 
 8 import org.openqa.selenium.By;
 9 import org.openqa.selenium.remote.DesiredCapabilities;
10 
11 import io.appium.java_client.android.AndroidDriver;
12 import io.appium.java_client.android.AndroidElement;
13 
14 public class Demo1 {
15 
16 public static void main(String[] args) throws Exception {
17 AndroidDriver driver;
18 DesiredCapabilities cap=new DesiredCapabilities();
19 cap.setCapability("automationName", "Appium");//appium做自动化
20 //    cap.setCapability("app", "C:\\\\software\\\\jrtt.apk");//安装apk
21 //    cap.setCapability("browserName", "chrome");//设置HTML5的自动化,打开谷歌浏览器
22 cap.setCapability("deviceName", "S4");//设备名称
23 cap.setCapability("platformName", "Android"); //安卓自动化还是ios自动化
24 cap.setCapability("platformVersion", "4.4"); //安卓操作系统版本
25 cap.setCapability("udid", "192.168.56.101:5555"); //设备的udid (adb devices 查看到的)
26 cap.setCapability("appPackage","com.android.calculator2");//被测app的包名
27 cap.setCapability("appActivity",".Calculator");//被测app的入口Activity名称
28 cap.setCapability("unicodeKeyboard", "True"); //支持中文输入
29 cap.setCapability("resetKeyboard", "True"); //支持中文输入,必须两条都配置
30 cap.setCapability("noSign", "True"); //不重新签名apk
31 cap.setCapability("newCommandTimeout", "30"); //没有新命令,appium30秒退出
32 driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),cap);//把以上配置传到appium服务端并连接手机
33 driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);//隐式等待
34 //通过resource name定位元素
35 driver.findElement(By.name("1")).click();
36 driver.findElement(By.name("+")).click();
37 driver.findElement(By.name("1")).click();
38 driver.findElement(By.name("=")).click();
39 }
40 
41 }

 

、 启动Android模拟器(也可以连接真机)

  1、cmd输入:android avd,选择模拟器,点击【Start】即可。

  2、启动好后,cmd输入:adb devices,确定设备是否连接上,如下图连接成功:

       

七、 启动Appium

  方法一:cmd输入:appium

  

  方法二:

  1、直接双击appium gui图标(如下图):

  

  2、点击右上角的启动按钮,启动日志如下:

  

八、 运行测试案例:

1、在eclipse中,项目右键>【Run As】>【JUnit Test】

2、appium运行结果:

 

 

 

以上是关于Appium入门示例(Java)的主要内容,如果未能解决你的问题,请参考以下文章

JAVA Appium自动化测试入门

移动端自动化测试工具 Appium 快速入门

LockSupport.java 中的 FIFO 互斥代码片段

appium 使用findElementByAndroidUIAutomator 定位元素示例

如何用appium测试ios包

appium + maven +jenkins 基本入门之二 新建maven 的java项目