概念

要使用该工具,需要满足如下条件:

安装

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:22.1.1'

    // Set this dependency to build and run UI Automator tests
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.0'

}
import android.support.test.uiautomator.UiAutomatorTestCase;
import android.support.test.uiautomator.UiObject;
import android.support.test.uiautomator.UiObjectNotFoundException;
import android.support.test.uiautomator.UiSelector;

public class CalculatorTest extends UiAutomatorTestCase {
    public void testDemo() throws UiObjectNotFoundException {
        getUiDevice().pressHome();
        UiObject Calculator = new UiObject(new UiSelector().description("计算器"));

        Calculator.clickAndWaitForNewWindow();
        UiObject seven = new UiObject(new UiSelector().resourceId("com.android.calculator2:id/digit_7"));
        seven.click();
        UiObject plus = new UiObject(new UiSelector().resourceId("com.android.calculator2:id/op_add"));
        plus.click();
        UiObject one = new UiObject(new UiSelector().resourceId("com.android.calculator2:id/digit_1"));
        one.click();
        UiObject result = new UiObject(new UiSelector().resourceId("com.android.calculator2:id/eq"));
        result.click();
        getUiDevice().pressBack();
    }
}

点击执行,这个应用将会在设备上或者模拟器上自动执行,可以在 Run 窗口下显示测试的结果。

UiObject resultTextView = new UiObject(new UiSelector().resourceId("com.android.calculator2:id/formula"));
String resultText = resultTextView.getText();
assertEquals("测试7+1=?的计算结果", “8", resultText);

当测试的结果出错,能够看到错误日志

错误日志

测试结果正确,可以在手机上自动执行测试结果。

在验证处添加断点调试

在开始编写测试案例代码之前,需要熟悉待测应用的 UI 元素。可以通过 uiautomatorviewer 工具来获取应用的界面截图并分析。uiautomatorviewer 工具提供了一个便利的方式来查看 UI 布局结构,并且可以查看各个控件的相关属性。利用这些信息可以用来创建 UI 测试代码。

分析待测应用 UI 界面的步骤如下:

  1. 把 Android 手机连接到电脑上
  2. 打开命令行窗口并导航到 SDK 目录 /tools/
  3. 运行如下命令:$ uiautomatorviewer


↙↙↙阅读原文可查看相关链接,并与作者交流