Стороннее приложение вылетает и выдает ошибку UIAutomation not connected, как это исправить? - PullRequest
0 голосов
/ 11 февраля 2019

Я запускаю тест автоматизации, который запускает стороннее приложение на устройстве Android.Запустив это:

@Given("^I open app")
    public void launchThirdParty() throws Exception {
        Runtime rt = Runtime.getRuntime();
        rt.exec("adb -s " + AndroidDevice.deviceName + " shell am start -n " +
                "app.integration/.ui.MainActivity");

Это откроет приложение, но затем завершит работу через 50 секунд, и эта ошибка появится в моих журналах:

E/UiDevice: Exceuting watcher: CRASH2
    java.lang.IllegalStateException: UiAutomation not connected!
        at android.app.UiAutomation.throwIfNotConnectedLocked(UiAutomation.java:971)
        at android.app.UiAutomation.waitForIdle(UiAutomation.java:577)
        at com.android.uiautomator.core.UiAutomatorBridge.waitForIdle(UiAutomatorBridge.java:96)
        at com.android.uiautomator.core.UiAutomatorBridge.waitForIdle(UiAutomatorBridge.java:91)
        at com.android.uiautomator.core.QueryController.findAccessibilityNodeInfo(QueryController.java:143)
        at com.android.uiautomator.core.QueryController.findAccessibilityNodeInfo(QueryController.java:138)
        at com.android.uiautomator.core.UiObject.findAccessibilityNodeInfo(UiObject.java:168)
        at com.android.uiautomator.core.UiObject.waitForExists(UiObject.java:852)
        at com.android.uiautomator.core.UiObject.exists(UiObject.java:903)
        at com.android.uiautomator.common.UiWatchers$4.checkForCondition(UiWatchers.java:107)
        at com.android.uiautomator.core.UiDevice.runWatchers(UiDevice.java:557)
        at com.android.uiautomator.core.UiObject.findAccessibilityNodeInfo(UiObject.java:173)
        at com.android.uiautomator.core.UiObject.waitForExists(UiObject.java:852)
        at com.android.uiautomator.core.UiObject.exists(UiObject.java:903)
        at io.appium.android.bootstrap.utils.TheWatchers.isDialogPresent(TheWatchers.java:51)
        at io.appium.android.bootstrap.utils.TheWatchers.check(TheWatchers.java:36)
        at io.appium.android.bootstrap.SocketServer$1.run(SocketServer.java:140)
        at java.util.Timer$TimerImpl.run(Timer.java:284)

Я посмотрел на ошибкуи, кажется, не так много информации об этом или каких-либо быстрых исправлениях или обходных путях, может ли кто-нибудь помочь мне решить эту проблему и убедиться, что это приложение не падает?

...