1、安装JDK1.7及以上

2、下载解压sdk并且配置环境变量:

  

  ANDROID_HOME:...\adt-bundle-windows-x86_64-20140702\sdk

  PATH:%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

  dos检测adb版本:如下则sdk环境配置成功!

  

3、安装夜神模拟器(自行百度),然后开启夜神模拟器!

4、安装appium  URL:https://github.com/appium/appium-desktop

  下载:

  默认安装:C:\Users\Administrator\AppData\Local\appium-desktop

  注意:不要下载安装旧版本appium-server

  启动:Appium.exe 填入本地地址:127.0.0.1及默认端口Port:4723

  

  启动appium服务器:Start Server v1.7.2

  

  开启一个会话进行选项配置:Desired Capabilities

  

  (1) deviceName 获取:首先通过 adb connect 127.0.0.1:62001连接夜神模拟器,然后通过adb devices检测deviceName:127.0.0.1:62001

  

  注意:genymotion自动连接,不需要 adb connect提前连接,与选取模拟器有关系!

  ·(2) appPackage 获取包名通过 adb shell dumpsys activity | find "mFocusedActivity"检测app当前运行的包名如下:appPackage: com.baidu.BaiduMap

  

  (3) appActivity入口获取类名(表示当前界面):先进入 ...\sdk\build-tools\android-4.4W目录找到aapt.exe在此目录下打开dos输入:aapt dump badging 拖入apk

  可以看到包名:

  寻找到类名: 

  (4) platformName : android

  (5) 开始会话:

  

5、开启java自动化脚本编写之旅:

  (1) New Maven Progect;

  (2) 引入java-client:扩充webDriver的协议,添加自动化相关的API;maven中央仓库:www.mvnrepository.com

  

  (3) 上代码:

package com.appium_Demo1;
import java.net.MalformedURLException;
import java.net.URL;
import org.apache.tools.ant.taskdefs.Sleep;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.support.ui.Sleeper;
import io.appium.java_client.android.AndroidDriver; public class LoginTest {
public static void main(String[] args) throws MalformedURLException, InterruptedException {
// TODO Auto-generated method stub
//1.添加配置,创建DesiredCapabilities对象
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
//指定测试设备的名称
desiredCapabilities.setCapability("deviceName", "127.0.0.1:62001");
//添加操作系统配置
desiredCapabilities.setCapability("platformName", "Android");
//添加操作系统版本设置
desiredCapabilities.setCapability("platformVersion", "4.4.2");
//指定想要测试应用的包名
desiredCapabilities.setCapability("appPackage", "com.baidu.BaiduMap");
//指定想要测试应用的入口activity
desiredCapabilities.setCapability("appActivity", "com.baidu.baidumaps.WelcomeScreen");
//2.创建驱动...URL是appium的固定地址;指定appium通讯的地址,将相对应的配置传入到驱动里边
AndroidDriver androidDriver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),desiredCapabilities);
//加线程等待
//Thread.sleep(5000);
//打开地图后点击同意继续
androidDriver.findElementById("com.baidu.BaiduMap:id/ok_btn").click();
//点击进入地图
androidDriver.findElementById("com.baidu.BaiduMap:id/btn_enter_map").click();
//退出
androidDriver.quit();
}
}

  (4) 报错:

  

  找不到元素,加线程等待:Thread.sleep(5000);

  (5) 再次运行成功!

  

6、小结:经过学习后自己总结,亲身体验,APP百度地图自动化导航执行成功,分享给正在学习的小白,如有不足之处,还请大家指出,勿喷!

java+appium 自动化环境搭建的更多相关文章

  1. appium自动化环境搭建

    1.java开发环境JDK 2.android SDK(platform/platform tools/tools/build tools) 3.python下载安装(pip) 4.appium下载安 ...

  2. 【转载】appium自动化环境搭建

    1.java开发环境JDK 2.android SDK(platform/platform tools/tools/build tools) 3.python下载安装(pip) 4.appium下载安 ...

  3. appium自动化环境搭建(python语言开发)

    简述 1.安装jdk,配置环境变量 2.安装AndroidSDK,配置环境变量 3.安装Python 4.安装Python集成开发环境PyCharm 5.安装node 6.安装appium服务端 7. ...

  4. Python+Appium自动化环境搭建

    appium工作原理 appium 在android端工作流 client端也就是我们 test script是我们的webdriver测试脚本. 中间是起的Appium的服务,Appium在服务端起 ...

  5. Appium自动化环境搭建(windows+Android)

    开始安装: 1.首先搭建好Android开发环境(eclipse+jdk+android的sdk包+Level17或以上的版本api) 2.设置ANDROID_HOME系统变量为你的Android S ...

  6. 【转】glumer Appium + Python环境搭建(移动端自动化)

    最近整理了一下自动化的东西,好久没搭建环境又踩了不少坑,appium的环境搭建比较繁琐,好多同行估计都在环境上被卡死了.分享一下~~ 一.安装JDK,配置JDK环境    百度搜索下载就行,这里分享一 ...

  7. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  8. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  9. Appium+python自动化-环境搭建

    一.前言 本文是在windows10  X64系统下搭建appium,流程如下: 1.安装jdk1.8+python3.6 (64位) 2.安装node.js 3.安装Appium-desktop 4 ...

随机推荐

  1. 另一种的SQL注入和DNS结合的技巧

    这个技巧有些另类,当时某业界大佬提点了一下.当时真的真的没有理解到那种程度,现在可能也是没有理解到,但是我会努力. 本文章是理解于:http://netsecurity.51cto.com/art/2 ...

  2. windows上git安装

    Git的官方网站:http://git-scm.com 1.下载:http://msysgit.github.com/ 2.安装 3.配置 用户名.邮箱 这个很重要将来项目提交的账号   $ git ...

  3. js原生事件

    js原生事件封装 // 事件处理对象 var EventUtil = { // 添加事件监听 add: function(element, type, callback){ if(element.ad ...

  4. Centos 03 基础命令

    切换目录 cd ~ 切换到当前用户的家目录 cd - 切换到上一次的目录 上传与下载 支持包在Dial-up Networking Support选项里,没有装可以通过 1.yum install l ...

  5. RPO攻击 & share your mind

    参考文章: https://xz.aliyun.com/t/2220 http://www.thespanner.co.uk/2014/03/21/rpo/ https://www.lorexxar. ...

  6. linux 文件搜索命令

  7. 根据传入的文件名称动态从moglifs图片服务器拿到pdf文档并在线浏览

    1.通过百度编辑器上传pdf文档等附件时,在上传方法中将返回的url进行设定,以达到后期点击后可进行浏览的效果: public static final State save(HttpServletR ...

  8. 2017-2018-2 20165234 实验四《Android程序设计》实验报告

    一.实验报告封面 课程:Java程序设计   班级:1652   姓名:刘津甫   学号:20165234 指导教师:娄嘉鹏    实验日期:2018年5月14日 实验时间:13:45 - 3:25 ...

  9. React组件State提升(译)

    译自:https://reactjs.org/docs/lifting-state-up.html (适当进行了裁减) 通常我们会碰到这样的情况,当某个组件的state数据改变时,几个React组件同 ...

  10. Datasnap 服务端 (Server)Session 管理 --- 解决 全示例慢(Google)

    Datasnap 服务端 (Server)Session  管理:  http://docwiki.embarcadero.com/RADStudio/Tokyo/en/Server_Side_Ses ...