51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2557|回复: 3
打印 上一主题 下一主题

[Appium] Appium环境搭建

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2017-7-12 10:29:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 悠悠小仙仙 于 2017-7-12 10:30 编辑

Appium环境搭建
注:appium安装到C盘,node.js安装到C盘
一、安装node.js
1、到官网下载node.js:https://nodejs.org/en/download/


2、获取到安装文件后,直接双击安装文件,根据程序的提示,完成nodejs的安装。
3、安装完成后,运行cmd,输入node –v,如果安装成功,会输出如下版本信息:


二、配置Android sdk环境
1、sdk环境配置
2、确保安装了 Level 17 或以上的版本 api
3、设置 ANDROID_HOME 系统变量为你的 Android SDK 路径
     F:\Program Files (x86)\Android\android-sdk


4、把 tools 和 platform-tools 两个目录加入到系统的 Path 路径里
    ;F:\Program Files (x86)\Android\android-sdk\platform-tools;F:\Program Files (x86)\Android\android-sdk\tools


三、安装手机驱动并测试连接真机
完成上述步骤以后,为了能够让手机连接到PC端进行真机测试。还需要安装测试手机对应的驱动程序。根据手机型号提前下载相应的离线驱动并安装,之后将手机与PC通过usb线相连。在cmd中输入以下命令,如果能够看到设备,则表示安装成功。


四、安装Appium
1.下载安装文件:https://bitbucket.org/appium/appium.app/downloads/
2.直接双击appium-installer.exe文件安装就好,桌面会生成一个appium的图标


3.把node_modules的bin目录放到系统的Path路径里
          C:\Program Files (x86)\Appium\node_modules\.bin


4.检查appium所需的环境是否OK:
进入cmd命令行,输入appium-doctor ,出现以下提示,All Checks were successful ,说明环境成功。


二、Appium入门实例(Java)
一、使用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】

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2017-7-12 10:36:40 | 只看该作者
本帖最后由 悠悠小仙仙 于 2017-7-12 11:40 编辑

三、下载测试APK
  1、下载测试的文件ContactManager.apk:https://github.com/appium/sample ... apps/ContactManager
  2、将下载的apk放到项目的apps目录下
四、建立package包和案例文件
  1、在src文件夹上右键单击,【New】-->【package】,输入包名:com.dan.demo,点击【Finish】
  2、在package下新建类:ContactsTest.java,如下:  
  下载地址:https://github.com/appium/sample ... om/saucelabs/appium
  1. package com.dan.demo;

  2. import io.appium.java_client.AppiumDriver;

  3. import io.appium.java_client.android.AndroidDriver;

  4. import io.appium.java_client.android.AndroidElement;

  5. import java.io.File;

  6. import java.net.URL;

  7. import java.util.List;

  8. import org.junit.After;

  9. import org.junit.Before;

  10. import org.junit.Test;

  11. import org.openqa.selenium.By;

  12. import org.openqa.selenium.WebElement;

  13. import org.openqa.selenium.remote.DesiredCapabilities;

  14. public class ContactsTest {

  15.     private AppiumDriver driver;

  16.     @Before

  17.     public void setUp() throws Exception {

  18.         // set up appium

  19.         File classpathRoot = new File(System.getProperty("user.dir"));

  20.         File appDir = new File(classpathRoot, "/apps");

  21.         File app = new File(appDir, "ContactManager.apk");

  22.         DesiredCapabilities capabilities = new DesiredCapabilities();

  23.         capabilities.setCapability("deviceName","4d1219502472216f");

  24.         capabilities.setCapability("platformVersion", "4.4");

  25.         capabilities.setCapability("app", app.getAbsolutePath());

  26.         capabilities.setCapability("appPackage", "com.example.android.contactmanager");

  27.         capabilities.setCapability("appActivity", ".ContactManager");

  28.         driver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);

  29.         System.out.println("App is launched!");

  30.     }

  31.     @Test

  32.     public void addContact(){

  33.         WebElement el = driver.findElement(By.name("Add Contact"));

  34.         el.click();

  35.         List<AndroidElement> textFieldsList = driver.findElementsByClassName("android.widget.EditText");

  36.         textFieldsList.get(0).sendKeys("Some Name");

  37.         textFieldsList.get(2).sendKeys("Some@example.com");

  38.         driver.swipe(100, 500, 100, 100, 2);

  39.         driver.findElementByName("Save").click();

  40.         System.out.println("App is done!");

  41.     }

  42.     @After

  43.     public void tearDown() throws Exception {

  44.         driver.quit();

  45.     }

  46. }
复制代码

五、 启动Android模拟器(也可以连接真机)
1、cmd输入:android avd,选择模拟器,点击【Start】即可。
2、启动好后,cmd输入:adb devices,确定设备是否连接上,如下图连接成功:

六、 启动Appium
方法一:cmd输入:appium

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

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

七、 运行测试案例:
1、在eclipse中,项目右键>【Run As】>【JUnit Test】,运行过程截图如下:

八、eclipse运行结果:

九、Appium运行结果:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
回复 支持 反对

使用道具 举报

  • TA的每日心情

    2020-2-2 12:43
  • 签到天数: 630 天

    连续签到: 1 天

    [LV.9]测试副司令

    4#
    发表于 2018-7-20 15:05:46 | 只看该作者
    厉害了,大神
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-20 23:43 , Processed in 0.062960 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表