Leo的历练之道

我是程序员,我爱上树

Android自动化测试(UiAutomator)介绍与学习

一.Android开发环境搭建

1.1 JDK的安装
百度里直接搜索JDK,百度软件中心就有,直接下载下来安装即可

在安装JDK的过程中,会提示安装JRE,一定要选择安装。安装完成后的目录是这样的:


1.2 环境变量的配置
 下面开始配置环境变量,右击【我的电脑】---【属性】-----【高级】---【环境变量】,如图:

选择【新建系统变量】--弹出“新建系统变量”对话框,在“变量名”文本框输入“JAVA_HOME”,在“变量值”文本框输入JDK的安装路径(也就是步骤5的文件夹路径),单击“确定”按钮,如图:

在“系统变量”选项区域中查看PATH变量,如果不存在,则新建变量 PATH,否则选中该变量,单击“编辑”按钮,在“变量值”文本框的起始位置添加“%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;”或者是直接“%JAVA_HOME%\bin;”,单击确定按钮,如图:

在“系统变量”选项区域中查看CLASSPATH 变量,如果不存在,则新建变量CLASSPATH,否则选中该变量,单击“编辑”按钮在“变量值”文本框的起始位置添加“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;”。如图:

现在测试环境变量的配置成功与否。在DOS命令行窗口输入“JAVAC”,输出帮助信息即为配置正确。如图:

1.2 eclipse下载(略) 
1.3 下载和安装Android SDK

进行下载即可。下载后得到一个android-sdk_r24.4.1-windows.zip,将该文件解压缩到任意路径下。解压缩后得到一个android-sdk-windows文件夹。启动里面的SDK Manager.exe,显示如下界面:

选择相应的要安装的包。注意这里需要翻墙下载。
为了在命令行窗口可以使用Android SDK的各种工具,最好将Android SDK目录下的tools子目录,platform-tools子目录添加到系统的PATH环境变量中。
1.4 安装Eclipse的ADT插件
安装此插件比较麻烦,需要时间挺长。我们直接从网上下载一个ADT的包,然后本地加载一下,效果也是一样的。

二.详细操作

2.1建立工程

2.2 添加JUnit库

2.3 添加安卓库

这里注意一下,自动化处理是android4.1开始支持,而且小版本的jar可以在大版本的手机运行。所以这里我们选择android-16这个文件夹。所有库添加完应该是这个样子:


2.4 在工程里创建相应的包和类即可



2.5 写个简单的程序进行测试:

package com.uia.expample.my;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiScrollable;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class MyTest extends UiAutomatorTestCase
{
    public void testDemo1() throws UiObjectNotFoundException
    {
    	getUiDevice().pressHome();
    }
    public void testDemo2() throws UiObjectNotFoundException
    {
    	
    }
}
这里需要注意,类里面定义了两个函数。定义两个是为了说明。jar的执行函数是以test为开头命名的函数。如果内部的函数开头不是test(我之前写成了Test),jar是不会模拟点击的。如果有多个test开头的函数,则根据test后面字母的ASCII码的顺序依次执行。所以上述的两个函数,先执行testDemo1,再执行testDemo2.

2.6 创建编译配置文件

<android-sdk>android create uitest-project -n <name> -t 1 -p <path>

说明一下各个参数的作用,如果已经将android sdk的路径配置到了系统的path中,输入命令“android create uitest-project”就可以查看到相应的帮助

-n 〈name〉: Project name.  就是在eclipse中创建的项目的名字。

-t 〈target〉  : Target ID of the new project. [required]   这个id是本机上android targets的id,可以通过命令 “android list”来查询,得到如下图的结果,选择android-16以上版本前面所对应的id


我在我的电脑上是这样输入的:




在build.xml上点击右键,选择“Run As” -> "Ant Build",可以看到下面的输出,这个输出实际上是一个帮助,是对build.xml的作用进行说明的。在build.xml中配置上相应的选项可以完成相应的操作。


在build.xml的配置上,将default后面的选项改为"build"后,就可以build jar包了。


同样执行Run As操作,就可以build 成功了。目标文件生成在工程目录下的bin文件夹下。


2.7 测试验证

首先将jar发送到手机上:

adb push UiAutomator4.1.jar /data/local/tmp/


然后启动手机里的uiauotmator。

adb shell uiautomator runtest UiAutomator.jar -c com.uia.expample.my.MyTest

这里可以看一下 UiAutomator.jar是jar包名字,com.uia.expample.my是你的的工程中包的名字,MyTest是你定义的类的名字


看到手机里效果,说明我们成功了

2.8 中文使用

如果控件的文本信息是中文的话,我们也是可以使用的。但是需要对工程进行下修改。在工程上右击“属性”,点击“资源”,选择单选按钮“其他”,选择“UTF-8”,确定即可。这样我们使用中文查找控件也就可以了。


阅读更多
个人分类: 开源库研究
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

Android自动化测试(UiAutomator)介绍与学习

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭