Android Instrumentation Runner с использованием ложки, теряющей соединение с устройством (сброс соединения по пиру) - PullRequest
0 голосов
/ 20 февраля 2020

Я использую Spoon для запуска тестов эспрессо для моего приложения Android.

Spoon извлекает скриншоты с устройства с помощью «com. android .ddmlib», который создает сокет-соединение с устройством.

Я выполняю около 50 тестов. Примерно через 5 минут и 36 секунд не удается установить соединение со следующей трассировкой стека.

java.io.IOException: Connection reset by peer
    at sun.nio.ch.FileDispatcherImpl.read0(Native Method)
    at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39)
    at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223)
    at sun.nio.ch.IOUtil.read(IOUtil.java:197)
    at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380)
    at com.android.ddmlib.AdbHelper.read(AdbHelper.java:941)
    at com.android.ddmlib.AdbHelper.read(AdbHelper.java:917)
    at com.android.ddmlib.AdbHelper.readAdbResponse(AdbHelper.java:219)
    at com.android.ddmlib.AdbHelper.setDevice(AdbHelper.java:1043)
    at com.android.ddmlib.SyncService.openSync(SyncService.java:194)
    at com.android.ddmlib.Device.getSyncService(Device.java:497)
    at com.squareup.spoon.SpoonDeviceRunner.run(SpoonDeviceRunner.java:276)
    at com.squareup.spoon.SpoonRunner.runTests(SpoonRunner.java:196)
    at com.squareup.spoon.SpoonRunner.run(SpoonRunner.java:144)
    at com.squareup.spoon.Main.main(main.kt:40)

Это происходит только на моем сервере сборки. Если я запускаю ложку на моей локальной машине, она работает нормально.

Обе машины используют одну и ту же версию Java:

java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

Почему на сервере сбрасывается сокетное соединение, а не моя локальная машина разработки и какие-либо идеи о том, как это исправить .

...