UiAutomator使用
Android自動(dòng)化測試
1. 環(huán)境搭建
必備條件
1鲤竹、JDK
2拘泞、SDK(API高于15)
3疯汁、Eclipse(安裝ADT插件)
4涕蚤、ANT(用于編譯成jar)
簡要步驟
1歉糜、安裝JDK并添加環(huán)境變量乘寒。
安裝后,一定要通過JAVA_HOME的方式添加環(huán)境變量匪补,即先建立JAVA_HOME變量,然后在path中添加%JAVA_HOME%\bin;
2、添加SDK環(huán)境變量蜡秽。
一定要先建立ANDROID_HOME,然后把%ANDROID_HOME%\tools添加到path中甘耿;
3、安裝Eclipse竿滨,并安裝ADT插件佳恬。
4、安裝ANT工具于游,并添加環(huán)境變量毁葱。
同樣一定要先建立%ANT_HOME%變量,然后在path中添加%ANT_HOME%\bin
2. 詳細(xì)操作
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();
// 進(jìn)入設(shè)置菜單
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();
}
// 進(jìn)入語言和輸入法設(shè)置
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 創(chuàng)建build文件
命令行運(yùn)行以下命令:
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進(jìn)入工程目錄贰剥,然后運(yùn)行
ant build
編譯生成jar倾剿,如下圖所示:
2.8 push并運(yùn)行jar
運(yùn)行以下命令:
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
運(yùn)行成功結(jié)果如下圖所示: