ubuntu中Appium入门(Java)

本文详细介绍了如何在Linux环境下配置ADB环境变量,并通过Eclipse创建Appium自动化测试项目。包括配置测试所需的类库、测试APK、编写测试用例及运行测试等关键步骤。

由于安装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】,运行过程截图如下:

  



<think>我们正在处理用户关于Appium入门教程和使用指南的请求。根据提供的引用内容,我们可以整合出一个结构化的入门指南。 引用内容概述: [^1]: 提到Appium设置插件(io.appium.settings)通常是内置的,不需要单独安装。 [^2]: 介绍Appium是一个跨平台的自动化测试框架,支持多种语言和平台(包括iOS和Android的原生、Web和混合应用),并封装了Selenium客户端类库。 [^3]: 提到了Appium Inspector工具的使用,用于查看页面元素。 [^4]: 提到appium-adb工具与其他组件(如Appium Server、客户端库)协作,支持自动化测试。 [^5]: 提供了Appium环境搭建的步骤(包括安装Node.js)以及基本介绍。 用户需求:学习Appium的基础知识和使用方法。 我们将按照以下结构组织回答: 1. Appium简介 2. 环境搭建 3. 基本组件和工作原理 4. 编写第一个测试脚本 5. 使用Appium Inspector 6. 相关工具(如ADB) 同时,根据指令,我们需要生成相关问题。 注意:引用标记要自然添加在引用内容的末尾。</think>### Appium 入门教程与使用指南 Appium 是一个开源的跨平台移动端自动化测试框架,支持 Android 和 iOS 的原生应用、Web 应用及混合应用测试。它基于 Selenium WebDriver 协议扩展,允许使用多种编程语言(如 Python、JavaJavaScript)编写测试脚本[^2][^5]。以下是入门操作指南: --- #### **1. 环境搭建** **核心依赖**: - **Node.js**:Appium 基于 Node.js 开发,需先安装 [Node.js 官方版本](https://nodejs.org/)[^5]。 - **Appium Server**:通过 npm 全局安装: ```bash npm install -g appium ``` - **驱动工具**: - Android:安装 `UiAutomator2`(默认驱动)和 `adb`(Android 调试桥)[^4][^5]。 - iOS:需 Xcode 和 `WebDriverAgent`。 - **客户端库**:按需安装编程语言的客户端,例如 Python: ```bash pip install Appium-Python-Client ``` --- #### **2. 基本组件与工作原理** - **Appium Server**:核心服务,接收测试脚本指令并转发给设备[^2][^4]。 - **客户端库**:封装 Selenium 命令,提供移动设备专用 API(如手势、屏幕旋转)[^2]。 - **设备代理**: - Android:通过 `UiAutomator2` 或 `Espresso` 操作界面元素。 - iOS:通过 `XCUITest` 驱动[^4]。 - **设置插件**:`io.appium.settings` 自动处理设备权限(如网络/WiFi 设置),无需手动安装[^1]。 --- #### **3. 编写第一个测试脚本(Python 示例)** ```python from appium import webdriver # 设备配置参数 desired_caps = { "platformName": "Android", # 平台(Android/iOS) "deviceName": "Pixel_5", # 设备名称 "app": "/path/to/app.apk", # 应用路径 "automationName": "UiAutomator2" # 驱动引擎 } # 启动会话 driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps) # 定位元素并操作 element = driver.find_element_by_id("login_button") element.click() # 结束测试 driver.quit() ``` --- #### **4. 使用 Appium Inspector** 用于查看和定位应用界面元素: 1. 启动 Appium Server:终端执行 `appium`。 2. 打开 Appium Inspector,输入设备配置参数(同脚本中的 `desired_caps`)。 3. 连接设备后,实时查看元素层级结构,生成定位表达式(如 XPath)[^3]。 --- #### **5. 关键工具链** - **appium-adb**:管理设备连接、安装/卸载应用,需与 `adb` 命令配合使用[^4]。 - **Appium Desktop**:图形化工具,包含 Server 和 Inspector 的集成环境。 --- #### **6. 学习资源推荐** - 官方文档:[Appium Documentation](https://appium.io/docs/en/2.0/) - 实操指南:[Appium 入门指南(偏重实操)](引用站内内容)[^2][^5]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值