Android自动化测试(UiAutomator)介绍与学习
2016-03-04 18:05
387 查看
一.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
登陆http://developer.android.com/sdk/index.html 页面,找到
进行下载即可。下载后得到一个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”,确定即可。这样我们使用中文查找控件也就可以了。
相关文章推荐
- UGUI源码学习之初涉Button(三)
- UIBezierPath精讲
- 消息队列ActiveMQ(一)——Queue方式和Topic方式
- require 加载机制
- UGUI源码学习之初涉Text(二)
- UITableView的全选和多选功能
- EasyUI Combobox 二级联动
- HBuilder实现软件自动升级
- 利用UIWindow自定义类似UIAlertView的弹出框
- HBase requestsPerSecond到底是什么?
- UISegmentedControl 改变选中颜色
- 使用Homebrew管理你的mac开发包( Press RETURN to continue or any other key to abort)
- UITableView 总结
- iOS3D-Touch开发之Home Screen Quick Actions(Ocjective-C)
- does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), o
- 90、setStatusBarStyle无效问题 修改状态栏颜色 只有白色黑色可选UIStatusBarStyleLightContent
- 常见移动设备的 CSS3 Media Query 整理(iPhone/iPad/Galaxy)
- UIMenuController使用中遇到的一个比较难注意的点
- UITableView 基本使用方法总结
- c# setxmlvalue