【问题标题】:ADB dump view hierarchy different from UiAutomator in Android Studio?ADB 转储视图层次结构与 Android Studio 中的 UiAutomator 不同?
【发布时间】:2018-11-07 16:31:46
【问题描述】:

我正在尝试使用其 resourceId 在 3rd 方 android 应用程序中获取一个元素。当我使用命令adb shell uiautomator dump 时,XML 视图层次结构会显示我正在寻找的元素。但是,当我在运行 UITest 时尝试在 Android Studio 中使用 UiAutomator 获取元素时,使用 device.findObject(new UiSelector().resourceId(myResourceID)),没有这样的元素。

有什么会导致这种行为的吗?我对 Android 很陌生,所以如果我需要提供更多详细信息,请告诉我。谢谢!

【问题讨论】:

    标签: android android-studio adb ui-automation android-uiautomator


    【解决方案1】:

    无法从您发布的信息中提取问题的原因。转储之间可能存在差异。

    但是,culebra.dtmilano.com 可能会对您的情况有所帮助,因为您可以直接在树上选择视图,如此处所示(将鼠标悬停在设置上)

    并生成相应的 Java(在这种情况下)或 Python、Kotlin 等代码,以确保视图的选择器是正确的

    @Test
    public void culebraGeneratedTest() throws Exception {
        mDevice.findObject(By.desc("Settings").clazz("android.widget.TextView").text("Settings").pkg("com.google.android.apps.nexuslauncher")).clickAndWait(Until.newWindow(), DEFAULT_TIMEOUT);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多