深入探讨uiautomatorviewer的下载及应用

发布时间:2023-05-21

一、了解uiautomatorviewer的概念

UI Automator Viewer是Android SDK中的一个GUI工具,它用于分析app界面结构以及验证UI元素属性和状态。通过uiautomatorviewer,用户可以方便查看目标app的控件布局及属性信息,快速编写自动化测试脚本等。但是,为了更好地使用uiautomatorviewer,首先必须要进行下载安装。

二、uiautomatorviewer下载步骤

1、首先打开Android SDK Manager,在SDK Tools中找到Android SDK Tools、Android SDK Platform-tools和Android SDK Build-tools相关选项,确保它们已经被安装。

Android SDK Manager 首页>SDK Tools:  
 Android SDK Tools  
 Android SDK Platform-tools 
 Android SDK Build-tools

2、要使用UI Automator Viewer,还需要确保Android SDK中的Android Testing Support Library已安装。打开SDK Manager,转到Extras中,找到Android Testing Support Library,勾选并下载安装即可。

Android SDK Manager 首页>Extras:  
 Android Testing Support Library

3、接下来,在SDK Manager的最下面可以找到下载Link,点击Download,下载完成后找到uiautomatorviewer.bat,运行即可。

三、使用uiautomatorviewer查看app控件布局及属性信息

1、打开uiautomatorviewer.bat,会出现下方界面。使用该工具需要连接 Android 设备到 PC 上。如果是真机,需要在手机上开启 USB 调试。如果是模拟器,需要配置模拟器的初始启动命令,加入一个systemserver参数;

uiautomatorviewer

2、点击uiautomatorviewer中的DeviceScreenshot按钮,可以使操作界面截取当前设备的屏幕图片。在左侧的Hierarchy Viewer面板中可以查看该图片对应的控件树。我们可以通过点击控件树中的控件,查看该控件的属性信息,包括id、text、class、package等。在这里,也可以看到当前选中控件的位置信息。 3、也可以使用uiautomatorviewer中的Inspect按钮,把设备所在的界面上传至电脑端进行查看。 4、使用uiautomatorviewer,可以更好地控制和查看app的界面情况以及快速的定位UI元素,便于以后的UI自动化测试。

四、自动化UI测试脚本示例

在阐述UI Automator Viewer如何下载和使用后,下面介绍一份实际的UI自动化测试脚本示例。

public class TestDemo extends UiAutomatorTestCase {  
  private UiDevice device;  
  @Override  
  protected void setUp() throws UiObjectNotFoundException {  
      super.setUp();  
      device = getUiDevice();  
  }  
  @Override  
  protected void tearDown() throws UiObjectNotFoundException {  
      super.tearDown();  
  }  
  public void testDemo() throws UiObjectNotFoundException, RemoteException {  
      device.pressHome();  
      UiObject browser = new UiObject(new UiSelector().text("Browser"));  
      browser.clickAndWaitForNewWindow(5000);  
      UiObject searchbox = new UiObject(new UiSelector().className("android.widget.EditText"));  
      searchbox.clickAndWaitForNewWindow(5000);  
      searchbox.setText("hello"); 
      device.pressEnter();  
      UiObject result = new UiObject(new UiSelector().className("android.view.View"));  
      assertFalse(result.exists());  
  }  
}

该脚本模拟了在浏览器中访问“hello”页面,验证页面中是否存在android.view.View控件。此脚本可以通过Android Studio或者其他编译环境来进行编写、调试以及运行。

五、结语

UI Automator Viewer作为Android SDK中的GUI工具,能够帮助开发者更好地查看和定位app控件界面以及属性信息。下载安装这个工具,也可以帮助开发者更快的进行UI自动化测试,提高开发效率和代码质量。希望本文能够帮助到读者,感谢阅读!