APP——java——自动化环境搭建01——个人详细搭建——真机模拟

Posted 小白龙白龙马

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了APP——java——自动化环境搭建01——个人详细搭建——真机模拟相关的知识,希望对你有一定的参考价值。

前提摘要——个人已经安装好java

 

导入java包

(1)、java-client-1.2.1.jar  包

(2)、selenium-2.44.0下面的包:

 (3)、selenium-server-standalone-2.44.0.jar

 

 

 

 

 

 

 

怎么导入呢?——如下:

 

 

 

 

 

 

 

 

 

 

 

=========================================================================================================================

第一步骤:按装JDK1.8

 

系统默认安装路径如下:C:\\Program Files\\Java\\jdk1.8.0_101

 

 

新建 JAVA_HOME 变量

 

点击新建,在弹出框中变量值填写jdk安装的根目录(即上面记录下来的   C:\\Program Files\\Java\\jdk1.8.0_101       ),如下图示:

 

 

 

 

 

在系统变量找到Path 变量,点击【新建】,增加两行配置

 

%JAVA_HOME%\\bin

 

%JAVA_HOME%\\jre\\bin

 

 

 

 

 

 

 

 

===========================================================================================================

 

 

第二步骤:安装配置android SDK

 

  • 下载Android SDK

默认官方网址由于不可描述的原因不能访问:

http://developer.android.com/sdk/index.html

 

所以给大家推荐国内下载SDK的网址:

http://www.android-studio.org/

 

要注意选择ADT进行下载,为什么要选择这个呢?

 

因为选择SDK进行下载的话,它只包含有基本的SDK工具,后面还需要自己手动通过AVD manager来下载对应的软件包,

 

所以建议初学者就下载ADT,这个已经包含android app自动化所需的相关SDK工具,不需要另外下载了,省事。

 

 

 

 

 

 

 

  • 配置Android SDK环境变量

 

解压完成后进入到对应的adt-bundle-windows-x86_64-20140702\\sdk\\platform-tools目录,

这个目录有存放appium自动化所需要的相关组件和工具,所以接下来我们需要来将这个目录配置到系统环境变量中,方便全局使用。

 

进入到系统环境变量设置中->新建ANDROID_HOME,变量值为你的SDK对应的目录,

比如我的ADT软件包解压之后是在D盘,那么SDK对应的目录就是:C:\\Users\\del\\Desktop\\a\\ADT\\adt\\adt\\sdk

 

 

 

 

 

 

接下来我们就需要把SDK对应的platform-tools目录以及tools配置到系统变量Path里面去:Path里面点击【新建->增加

 

%ANDROID_HOME%\\platform-tools

 

以及

 

%ANDROID_HOME%\\tools                                                                                                   

 

 

 

 

系统的cmd窗口输入adb version来检测是否安装成功,如果有下面的信息显示成功的话,那么SDK配置就OK了。

 

 

 

 

 

 

 

==================================================================================================

 

 

第三步骤:安装Appium-desktop

 

 

有一点大家要注意,下载的时候Appium有两个不同的版本类型,Appium-desktop以及Appium-server,这两者有什么区别呢?

 

  • Appium-server是最先出来的,他的下载地址:https://bitbucket.org/appium/appium.app/downloads/,但是很久没有更新了

     

  • Appium-desktop是Appium的桌面版本,它封装了运行 Appium服务端的所有依赖,而且不需要担心怎样安装Node.js。

  • 所以强烈建议大家选择Appium-desktop进行安装,并且安装也非常的容易。

     

 

Appium-desktop是GitHub上面的开源项目,代码地址是:https://github.com/appium/appium-desktop

 

对应安装包下载地址:https://github.com/appium/appium-desktop/releases

 

进入到安装包的下载地址,下载Appium-desktop的对应版本安装包(这里建议不要用最新的,可能会存在一些BUG),

 

这里以V1.14.0为例:展开Assets选项,选择windows平台的安装包

 

 

 

 

=========================================================================================================

 

第四步骤:   我这里没有使用模拟器,以真机进行测试

 

真机处于开发者模式下:

 

 

 

机器名称:8DF6R17503000072

 

 

 

 

如何获取包名和启动Main   Activity值

 

首先打开要操作的app  ,然后在dos窗口输入如下命令:   adb    shell    dumpsys    window    w    |findstr   \\/     |findstr    name=

C:\\Users\\del>adb shell dumpsys window w |findstr \\/ |findstr name=

mSurface =  Surface(name=com.android.calculator2/com.android.calculator2.Calculator)

C:\\Users\\del>

 

 

包名:com.android.calculator2

 

Main  Activity:com.android.calculator2.Calculator

 

 

注意:执行此命令的时候 ,需要打开被测试的app主界面(进入界面)

 

 

 

 

 

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

(1)、双击打开appium;

 

(2)、设置并执行python脚本;

 

(3)、系统开始运行后,会自动在手机端安卓appium-setting客户端

 

 

 

 

 

 

================================================================================================

 

下面以打开电话示例:

package jkcs;

import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.AppiumDriver;

public class jblx 
{
    public static void main(String[] args) throws MalformedURLException, InterruptedException 
    {
        DesiredCapabilities capabilities = new DesiredCapabilities();  

        capabilities.setCapability("platformName", "Android");  
        capabilities.setCapability("deviceName","8DF6R17503000072");  
        capabilities.setCapability("platformVersion", "8.0.0");  
 
        capabilities.setCapability("appPackage", "com.android.contacts");  
        capabilities.setCapability("appActivity", "com.android.contacts.activities.DialtactsActivity");  
        
        AppiumDriver driver = new AppiumDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
        
        Thread.sleep(5000);
        driver.findElementById("com.android.contacts:id/btn_status_right").click();  //陌生号码
        Thread.sleep(5000);
        driver.findElementById("com.android.contacts:id/btn_status_middle").click();  //未接来电
        Thread.sleep(5000);
        driver.quit();
    }
}

 

 

 

 

 

 

 

 

 

=======================================================================================================================

 

 

参考文档:https://blog.csdn.net/jiabailong/article/details/52293729

 

5、创建Java工程(Eclipse)

(1)导入Selenium类库

http://selenium-release.storage.googleapis.com/2.44/selenium-java-2.44.0.zip

http://selenium-release.storage.googleapis.com/2.44/selenium-server-standalone-2.44.0.jar

(确认2014.11.14有效,如无效请访问http://docs.seleniumhq.org/download/ 进行下载 )

 

注:需要导入两个,一个是客户端,一个是服务端,服务端库不导入会导致运行时报错。

(2)导入Appium类库

https://search.maven.org/remotecontent?filepath=io/appium/java-client/1.2.1/java-client-1.2.1.jar 

(确认2014.11.14有效,如无效请访问http://appium.io/downloads.html  进行下载 )

注:此处如果选择下载最新的2.0以上的版本,会导致编译new AppiumDriver时报错。解决办法见:

http://blog.csdn.net/zhubaitian/article/details/39717889 

 

 

以上是关于APP——java——自动化环境搭建01——个人详细搭建——真机模拟的主要内容,如果未能解决你的问题,请参考以下文章

APP——python——自动化环境搭建02——个人详细搭建

lushengduan01搭建安卓App开发环境 编写程序HelloWorld

python自动化app自动化:1.环境搭建

安卓App自动化环境搭建

ZooKeeper 3.6.2 Windows环境搭建(伪集群详)

个人免签,微信,支付宝,银行appHOOK技术搭建步骤和自动回调