ubuntu中Appium入门(Java)

由于安装Appium不会使用,学习了一下网上的方法,遇到了很多问题,主要是在手机上安装程序,以及定位元素,记录一下,方便后面使用。

、配置adb环境变量(之前我的adb没有Linux下,后来拷贝到linux磁盘下,但没有配置,导致无法使用,所以记录下来)

配置环境变量

复制代码代码如下:

sudo gedit /etc/profile

在文件的最后追加一下内容(your_android-sdk-linux_path是绝对路径):
复制代码代码如下:

#set path for android sdk tools
export PATH=$PATH:/your_android-sdk-linux_path/tools/
export PATH=$PATH:/your_android-sdk-linux_path/platform-tools/
2、保存后,同步更新
复制代码代码如下:

source /etc/profile
1、sudo  gedit   ~/.bashrc 
2、将下面的两句加到上面打开的文件里 
export ANDROID_HOME=/home/sdk文件路径
export PATH=$PATH:$ANDROID_HOME/platform-tools
3、source~/.bashrc 

二、使用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 

  将需要测试的apk放到项目的apps目录下 

五、建立package包和案例文件

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

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

package com.glen.demo;

/*
 *  安装应用程序app-debug.apk
 *  打开app-debug,输入用户名、密码,点击保存
*/
import java.io.File;
import java.net.URL;
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.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import io.appium.java_client.android.AndroidDriver;

public class ContactsTest {
	private AndroidDriver driver;
  @Test
  public void addContact() {
	 WebElement el=driver.findElement(By.name(""));
	 el.click();
	 driver.swipe(100, 500, 100, 100, 2);
	 driver.findElementByName("").click();
  }
  @BeforeClass
  public void setUp()  throws Exception{
	  //<span style="font-family: Verdana, Arial, Helvetica, sans-serif;">安装apk</span>
          //设置apk的路径
	  File classpathRoot=new File(System.getProperty("user.dir"));//获得项目路径
	  File appDir=new File(classpathRoot,"apps");//获得APK所在文件夹名称
	  File app=new File(appDir,"app-debug.apk");//获得APK文件
	  
	  //设置自动化相关参数
	  DesiredCapabilities capabilities=new DesiredCapabilities();
	  capabilities.setCapability(CapabilityType.BROWSER_NAME, "");//指定浏览器的名字,我们测试的是APK所以没有浏览器,故而为空;
	  capabilities.setCapability("platformName", "Android");//平台名称
	  capabilities.setCapability("deviceName", "d76af");  //模拟器才需要的参数,真机不需要设置//设备名称,通过命令行输入adb devices进行查找
	  //设置安卓系统版本	  capabilities.setCapability("platformVersion", "5.1.1"); //模拟器才需要的参数,真机不需要设置
	  
	  //设置apk路径
	  capabilities.setCapability("app", app.getAbsolutePath());//指定需要测试的APK,也就是需要安装的APK文件;
	  
	  //设置app的主包名和主类名,需要设置了才可以安装
	  capabilities.setCapability("appPackage", "com...");
	  capabilities.setCapability("appActivity", ".ui...");
	  
	 //使用命令行方式查找app类名:aapt dump xmltree xx.apk AndroidManifest.xml																	
	capabilities.setCapability("unicodeKeyboard", true);// 使用 Unicode 输入法
	capabilities.setCapability("resetKeyboard", true); // 重置输入法到原有状态
	 //初始化//核心关键步骤,创建驱动,指定服务地址,和初始化信息;
	 driver=new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),capabilities);
	  
  }

  @AfterClass
  public void tearDown() throws Exception{
	  driver.quit();
  }
}

其中,元素定位方法:

1、在命令行中运行sdk/tools目录下的uiautomatorviewer文件

hhh@Test-hhh:/opt/sdk/tools$ ./uiautomatorviewer 

2、打开界面,以及操作如下:


好了,完成这一步,由于之前使用selenium进行PC端的BS结构测试,后面我基本知道怎么使用了。

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

  1、cmd输入:android avd,选择模拟器,点击【Start】即可。具体可参考:http://www.cnblogs.com/puresoul/p/4597211.html

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

   

七、 启动Appium

  方法一:cmd输入:appium

  

  方法二:

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

  

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

   

八、 运行测试案例:

  1、在eclipse中,项目右键>【Run As】>【TestNG Test】,运行过程截图如下:

  



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值