问答详情
源自:2-2 第一个测试工程

用uiautomator获取元素时,报UI hierarch错误

https://img3.mukewang.com/5c99e99e0001ba5d06300237.jpg

如图,这种情况怎么解决呢

提问者:慕雪8504451 2019-03-26 16:59

个回答

  • 幸福的达哥
    2019-04-18 10:14:14

    你好,这个问题应该已经解决了吧?在其他的静态界面还会有这种现象吗,如果静态界面没问题的话,试试用批处理获取动态界面。

    @=== 把下面这句话保存到批处理文件里面,双击运行就好 ===

    @echo off

    set str=android8.1-uiautomatorDump V1.1 20180717 



    :start

    cls

    color 1f

    echo ==================================================================

    echo.

    echo %str%

    echo.

    echo ==================================================================


    if not exist Log md Log

    if exist .\Log\uidump.uix del /f /q .\Log\uidump.uix

    if exist .\Log\uidump.png del /f /q .\Log\uidump.png

    if exist .\Log\uidump.uix del /f /q .\Log\uidump.uix

    if exist .\Log\uidump.png del /f /q .\Log\uidump.png


    echo 等待设备插入...

    echo adb-wait-device

    adb wait-for-device

    echo.

    echo Start...

    echo.

    echo 开始dump UIX文件和截图,请稍候...

    echo.


    echo.

    echo adb shell /system/bin/uiautomator dump /data/local/tmp/uidump.xml

    adb shell /system/bin/uiautomator dump /data/local/tmp/uidump.xml

    echo.

    echo adb pull /data/local/tmp/uidump.xml uidump.uix

    adb pull /data/local/tmp/uidump.xml .\Log\uidump.uix

    echo.

    echo 正在截图...

    echo.

    echo adb shell screencap /sdcard/uidump.png

    adb shell screencap /sdcard/uidump.png

    echo.

    echo adb pull /sdcard/uidump.png uidump.png

    adb pull /sdcard/uidump.png .\Log\uidump.png

    echo.

    echo Success!!!


    color 2f

    echo 按任意键重复进行操作...

    pause

    goto start