关于 自动化测试 其实并不是很难 主要环境配置起来 很麻烦 网上有不少博客 但有些细节没有说到 反倒API说了一大推 环境搭建起来了 其他就很简单了
我们会用到 ANT 可以把 写的测试类打成Jar包 Uiautomator-1.0 并不可以直接运行到手机里 需要借助ant 打成jar包的形式 Push到手机里 在通过命令来运行 比较反人类 说真的 不推荐使用 Uiautomator2.0已经出来了 还是2.0好点
首先下载 ANT 在配置 环境变量 下载完了直接解压就行 最好在C目录(反正也不大) 全英文
点击我的电脑 系统属性 高级系统设置 环境变量
ANT_HOME 为命名 后面是ant存放的路径
ANT_HOME: C:\ant\apache-ant-1.9.2
CLASSPATH: %ANT_HOME%\lib
PATH: %ANT_HOME%\bin
这样我们环境变量就配置好了 可以进行下一步了
我是用的eclipse IDE看个人意愿 (其实我最喜欢AS了)
新建项目 不用我说 随便建个class写就行 注意minSdkVersion不要低于16 16才有的自动化测试
测试代码 注意编码 要UTF-8 不要用GBK 会报错 对中文支持不是很好
public void testDemo() throws Exception{
//进入操作前,先用Home键进入待机界面
getUiDevice().pressHome();
UiObject object = new UiObject(new UiSelector().text("设置"));
object.click();
}
接着就开始复杂的命令了 之前配置的ant 也可以用上了
1 找到自己的IDE 所在的目录 一直进到 tools里 复制全路径 在到CMD 进入到目录下 输入android list进行查询android 版本对应的id 值
我的android 当前的ID值 为10 记录下来 下一步会用到
2 接着下一步的操作还在tools文件下 进行操作 CMD 接着输入命令android create uitest-project -n
比如:
android create uitest-project -n Checker-t 10 -p G:\Ui\src\com\example\ui\Demo
name 就是要生成最后Jar包的名字 android sdk id 顾名思义 就是刚才我们查询到的 id值 最后project_path 就是测试类所在的全路径 此命令成功后会在 项目的根目录下生成 build.xml文件 如果没有成功查询之前的操作 路径 以及id值是否正确
3 最后一步 CDM 进入到 测试工程目录 在CMD 输入 ant build 成功后会在 工程的bin 目录下 出现jar包
bin 目录下的jar 包就是我们写好的脚本了 你可以直接push到手机里 也可以通过QQ的手机助手进行发送
将jar包push到手机data/local/tmp目录下,对应的命令是:
adb push
必须要push到data/local/tmp QQ传送的朋友 可以下载个RE文件管理 进行剪切 或者用手机自带的
最后运行 jar包 adb shell uiautomator runtest
例:
adb shell uiautomator runtest Checker.jar -c com.example.ui.Demo
显示OK 就是成功了 就会神奇的看到设置被点开了 之后你想怎么写都行了 可以查询相关API 其实Uiautomator本质就是 给开发人员用的测试 不论1.0 还是 2.0 如果你要写脚本可以用触动精灵 挺好用的 两天就能写个功能完善的脚本