UiAutomator使用
Android自动化测试
1. 环境搭建
必备条件
1、JDK
2、SDK(API高于15)
3、Eclipse(安装ADT插件)
4、ANT(用于编译成jar)
简要步骤
1、安装JDK并添加环境变量。
安装后,一定要通过JAVA_HOME的方式添加环境变量,即先建立JAVA_HOME变量,然后在path中添加%JAVA_HOME%\bin;
2、添加SDK环境变量。
一定要先建立ANDROID_HOME,然后把%ANDROID_HOME%\tools添加到path中;
3、安装Eclipse,并安装ADT插件。
4、安装ANT工具,并添加环境变量。
同样一定要先建立%ANT_HOME%变量,然后在path中添加%ANT_HOME%\bin
2. 详细操作
2.1 新建JavaProject
2.2 添加JUint库
2.3 添加Android库
2.4 示例代码
package com;
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 Runner extends UiAutomatorTestCase {
public void testDemo() throws UiObjectNotFoundException {
getUiDevice().pressHome();
// 进入设置菜单
UiObject settingApp = new UiObject(new UiSelector().text("Settings"));
settingApp.click();
//休眠3秒
try {
Thread.sleep(3000);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
// 进入语言和输入法设置
UiScrollable settingItems = new UiScrollable( new UiSelector().scrollable(true));
UiObject languageAndInputItem = settingItems.getChildByText(
new UiSelector().text("Language & input"), "Language & input", true);
languageAndInputItem.clickAndWaitForNewWindow();
}
}
2.5 找到SDK id
2.6 创建build文件
命令行运行以下命令:
android create uitest-project -n <name> -t <android-sdk-ID> -p <path>
示例:
android create uitest-project -n AutoRunner -t 2 -p D:\gogs\develop\ireaders_android\AutoRunner
2.7 编译生成jar
cmd进入工程目录,然后运行
ant build
编译生成jar,如下图所示:
2.8 push并运行jar
运行以下命令:
adb push <jar文件路径> data/local/tmp
adb shell uiautomator runtest <jar文件名> -c <工程中的类名,包含包名>
示例:
adb push D:\gogs\develop\ireaders_android\AutoRunner\bin\AutoRunner.jar data/local/tmp
adb shell uiautomator runtest AutoRunner.jar -c com.Runner.Runner
运行成功结果如下图所示: