Hi,
First of all, I really like Detox, so thank you for this library!
Describe the bug
I'm trying to run Detox tests on react native android device in debug mode.
The tests aren't running, and detox trace shows "CANNOT_FORWARD:
If in different terminal I start react-native bundle and press "R" for reloading it, the tests start to run.
To Reproduce
Expected behavior
Detox start running over the tests
Device and Verbose Detox Logs
detox[97978] DEBUG: [exec.js/EXEC_CMD, #21] "/Android/sdk/platform-tools/adb" -s emulator-17722 shell "date +\"%m-%d %T.000\""
detox[97978] DEBUG: [exec.js/EXEC_CMD, #22] "/Android/sdk/platform-tools/adb" -s emulator-17722 reverse tcp:64867 tcp:64867
detox[97978] DEBUG: [exec.js/EXEC_CMD, #23] "/Android/sdk/platform-tools/adb" -s emulator-17722 shell "pm list instrumentation"
detox[97978] DEBUG: [exec.js/SPAWN_CMD, #24] [pid=98010] /Android/sdk/platform-tools/adb -s emulator-17722 shell am instrument -w -r -e detoxServer ws://localhost:64867 -e detoxSessionId 2f0e4128-30e3-0737-4ac0-74907e3abed9 -e debug false com.aaa.myWireless.test/androidx.test.runner.AndroidJUnitRunner
detox[97978] DEBUG: [exec.js/EXEC_CMD, #25] "/Android/sdk/platform-tools/adb" -s emulator-17722 shell "ps | grep \"com\.aaa\.myWireless$\""
detox[97978] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=2f0e4128-30e3-0737-4ac0-74907e3abed9)
I tried it on this simulators:


Environment (please complete the following information):
jest-circusI tried it too :
I have the same problem, can not run tests without pressing the reload bundle
Same here
Same for me.
same here
+1
@barak109 could you please provide _device_ logs? They might give us a hint as to why the emulator fails to connect back to the detox server.
Hi @d4vidi Thanks for the response.
I use Pixel_3a_XL_API_29 device
And our project is a native project with RN
I run: detox test --configuration android --record-logs all
Terminal info:
detox[80546] INFO: [test.js] configuration="android" recordLogs="all" useCustomLogger=true forceAdbInstall=false DETOX_START_TIMESTAMP=1605425897121 readOnlyEmu=false reportSpecs=true jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
detox[80548] INFO: [DetoxServer.js] server listening on localhost:59936...
detox[80548] ERROR: DetoxRuntimeError: Failed to run application on the device
HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
detox[80548] INFO: Positive Device Upgrade Flow is assigned to undefined
detox[80548] WARN: [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
(id = -1000) isReady: {}
Unresponded network requests might result in timeout errors in Detox tests.
detox[80546] ERROR: [cli.js] Error: Command failed: jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
artifacts/detox_pid_80548.json.log
{"name":"detox","hostname":"blabla","pid":80548,"__filename":"/Users/blabla/Desktop/blabla/blabla/blabla/js/node_modules/detox/src/server/DetoxServer.js","level":30,"msg":"server listening on localhost:59936...","time":"2020-11-15T07:38:19.486Z","v":0}
{"name":"detox","hostname":"blabla","pid":80548,"level":50,"msg":"DetoxRuntimeError: Failed to run application on the device\n\nHINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for \"ready\" message (over WebSocket) from the instrumentation process.","time":"2020-11-15T07:41:44.674Z","v":0}
{"name":"detox","hostname":"blabla","pid":80548,"level":30,"event":"WORKER_ASSIGN","msg":"\u001b[97mPositive Device Upgrade Flow\u001b[39m is assigned to \u001b[91mundefined\u001b[39m","time":"2020-11-15T07:41:45.238Z","v":0}
{"name":"detox","hostname":"blabla","pid":80548,"level":30,"event":"SPEC_STATE_CHANGE","msg":"\u001b[1m\u001b[37mPositive Device Upgrade Flow > Log In With BeMock - Android > Android: GotoMainPage: \u001b[39m\u001b[22m\u001b[90mShould tap on accept terms button \u001b[39m","time":"2020-11-15T07:41:45.239Z","v":0}
{"name":"detox","hostname":"blabla","pid":80548,"__filename":"/Users/blabla/Desktop/blabla/blabla/blabla/js/node_modules/detox/src/client/Client.js","level":40,"event":"PENDING_REQUESTS","msg":"App has not responded to the network requests below:\n (id = -1000) isReady: {}\n\nUnresponded network requests might result in timeout errors in Detox tests.\n","time":"2020-11-15T07:41:45.383Z","v":0}
artifacts/detox_pid_80548.log
detox[80548] INFO: [DetoxServer.js] server listening on localhost:59936...
detox[80548] ERROR: DetoxRuntimeError: Failed to run application on the device
HINT: Most likely, your tests have timed out and called detox.cleanup() while it was waiting for "ready" message (over WebSocket) from the instrumentation process.
detox[80548] INFO: [97mPositive Device Upgrade Flow[39m is assigned to [91mundefined[39m
detox[80548] INFO: [1m[37mPositive Device Upgrade Flow > Log In With BeMock - Android > Android: GotoMainPage: [39m[22m[90mShould tap on accept terms button [39m
detox[80548] WARN: [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
(id = -1000) isReady: {}
Unresponded network requests might result in timeout errors in Detox tests.
artifacts/emulator-5554 2020-11-15 07-41-45Z.startup.log
11-15 09:38:24.179 5264 5393 I FORESEE_TRIGGERΒ Β Β Β Β Β Β : Disabling debug logging
11-15 09:38:24.182 5264 5316 I UsageTrackerFacilitator: Usage tracking enabled
11-15 09:38:24.185 5264 5316 I TestRequestBuilder: Scanning classpath to find tests in paths [/data/app/com.blabla.myWirelessTest.test-oAK-ZL4blablafTauA==/base.apk]
11-15 09:38:24.185 5264 5393 I FORESEE_SDK_COMMONΒ Β Β Β : Loaded configuration and state for ForeSee SDK v5.3.1
11-15 09:38:24.185 5264 5316 W .myWirelessTes: Opening an oat file without a class loader. Are you using the deprecated DexFile APIs?
11-15 09:38:24.195 5264 5393 W .myWirelessTes: Accessing hidden field Lsun/misc/Unsafe;->theUnsafe:Lsun/misc/Unsafe; (greylist, reflection, allowed)
11-15 09:38:24.195 5264 5393 W .myWirelessTes: Accessing hidden method Lsun/misc/Unsafe;->allocateInstance(Ljava/lang/Class;)Ljava/lang/Object; (greylist, reflection, allowed)
11-15 09:38:24.301 5264 5316 I .myWirelessTes: Waiting for a blocking GC ClassLinker
11-15 09:38:24.532 5264 5316 D TestExecutor: Adding listener androidx.test.internal.runner.listener.LogRunListener
11-15 09:38:24.532 5264 5316 D TestExecutor: Adding listener androidx.test.internal.runner.listener.InstrumentationResultPrinter
11-15 09:38:24.532 5264 5316 D TestExecutor: Adding listener androidx.test.internal.runner.listener.ActivityFinisherRunListener
11-15 09:38:24.536 5264 5316 I TestRunner: run started: 3 tests
11-15 09:38:24.542 5264 5316 I TestRunner: started: runDetoxTests(com.blabla.myWireless.DetoxTest)
11-15 09:38:24.547 5264 5264 I MonitoringInstr: Activities that are still in CREATED to STOPPED: 0
11-15 09:38:24.559 5264 5316 D EventInjectionStrategy: Creating injection strategy with input manager.
11-15 09:38:24.560 5264 5316 W .myWirelessTes: Accessing hidden method Landroid/hardware/input/InputManager;->getInstance()Landroid/hardware/input/InputManager; (greylist, reflection, allowed)
11-15 09:38:24.560 5264 5316 W .myWirelessTes: Accessing hidden method Landroid/hardware/input/InputManager;->injectInputEvent(Landroid/view/InputEvent;I)Z (greylist, reflection, allowed)
11-15 09:38:24.560 5264 5316 W .myWirelessTes: Accessing hidden field Landroid/hardware/input/InputManager;->INJECT_INPUT_EVENT_MODE_WAIT_FOR_FINISH:I (greylist, reflection, allowed)
11-15 09:38:24.573 5264 5316 W .myWirelessTes: Accessing hidden field Ljava/lang/reflect/Field;->accessFlags:I (greylist, reflection, allowed)
11-15 09:38:24.591 5264 5264 W ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@bgf7961
11-15 09:38:24.607 5264 5401 D libEGL : Emulator has host GPU support, qemu.gles is set to 1.
11-15 09:38:24.607 5264 5401 W libc : Unable to set property "qemu.gles" to "1": connection failed; errno=13 (Permission denied)
11-15 09:38:24.620 5264 5264 D LifecycleMonitor: Lifecycle status change: com.blabla.myWireless.activity.login.blablaScreenActivity@c273947 in: PRE_ON_CREATE
11-15 09:38:24.621 5264 5264 I blabla : βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
11-15 09:38:24.621 5264 5264 I blabla : β Thread: main
11-15 09:38:24.621 5264 5264 I blabla : βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
11-15 09:38:24.621 5264 5264 I blabla : β blablaScreenActivity.onCreate (blablaScreenActivity.java:36)
11-15 09:38:24.621 5264 5264 I blabla : β Logger.log (Logger.java:68)
11-15 09:38:24.621 5264 5264 I blabla : βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
11-15 09:38:24.621 5264 5264 I blabla : β Application debuggable flag: 2
11-15 09:38:24.621 5264 5264 I blabla : βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
11-15 09:38:41.275 5264 5264 W ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@7d0sf70
11-15 09:38:41.307 5264 5264 D LifecycleMonitor: Lifecycle status change: com.blabla.myWireless.activities.CheckEULAActivity@3b6cf9c in: PRE_ON_CREATE
11-15 09:38:41.314 5264 5264 I blabla :
11-15 09:38:42.767 5264 5497 I Detox : Detox thread starting (com.wix.detox.manager)
11-15 09:38:42.768 5264 5497 I DetoxManager: DetoxServerUrl: ws://10.0.2.2:59936
11-15 09:38:42.768 5264 5497 I DetoxManager: DetoxSessionId: 481f2846-fd5d-b098-4d0e-867735476856
11-15 09:38:42.782 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 8
11-15 09:38:42.791 5264 5264 D SoLoader: About to load: libjscexecutor.so
11-15 09:38:42.791 5264 5264 D SoLoader: libjscexecutor.so not found on /data/data/com.blabla.myWirelessTest/lib-main
11-15 09:38:42.791 5264 5264 D SoLoader: libjscexecutor.so found on /data/app/com.blabla.myWirelessTest-w80bL_DzrB1LAXkSsajniQ==/lib/x86_64
11-15 09:38:42.791 5264 5264 D SoLoader: Not resolving dependencies for libjscexecutor.so
11-15 09:38:42.795 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:42.796 5264 5264 E SoLoader: couldn't find DSO to load: libjscexecutor.so caused by: dlopen failed: library "libjsc.so" not found
11-15 09:38:42.797 5264 5264 D ReactNative: ReactInstanceManager.ctor()
11-15 09:38:42.797 5264 5264 D SoLoader: init exiting
11-15 09:38:42.824 5264 5424 D HttpResourceProvider: in HaloXCommon-1.0.83,the post data in JsonRequest is:{"clientID":"O5FoY1UsNnqOAb4ShkIIlZbfqkU="}
11-15 09:38:43.037 5264 5424 D HttpResourceProvider: in HaloXCommon-1.0.83,responseCode : 200
11-15 09:38:43.037 5264 5424 D HttpResourceProvider: in HaloXCommon-1.0.83,the response encoding:null
11-15 09:38:43.906 5264 5504 D SoLoader: About to load: libreactnativejni.so
11-15 09:38:43.907 5264 5504 D SoLoader: libreactnativejni.so not found on /data/data/com.blabla.myWirelessTest/lib-main
11-15 09:38:43.907 5264 5504 D SoLoader: libreactnativejni.so found on /data/app/com.blabla.myWirelessTest-w80bL_DzrB1LAXkSsajniQ==/lib/x86_64
11-15 09:38:43.907 5264 5504 D SoLoader: Not resolving dependencies for libreactnativejni.so
11-15 09:38:43.916 5264 5504 D SoLoader: Loaded: libreactnativejni.so
11-15 09:38:43.916 5264 5504 D SoLoader: About to load: libfb.so
11-15 09:38:43.916 5264 5504 D SoLoader: libfb.so not found on /data/data/com.blabla.myWirelessTest/lib-main
11-15 09:38:43.916 5264 5504 D SoLoader: libfb.so found on /data/app/com.blabla.myWirelessTest-w80bL_DzrB1LAXkSsajniQ==/lib/x86_64
11-15 09:38:43.916 5264 5504 D SoLoader: Not resolving dependencies for libfb.so
11-15 09:38:43.917 5264 5504 D SoLoader: About to load: libfb.so
11-15 09:38:43.917 5264 5504 D SoLoader: libfb.so not found on /data/data/com.blabla.myWirelessTest/lib-main
11-15 09:38:43.917 5264 5504 D SoLoader: libfb.so found on /data/app/com.blabla.myWirelessTest-w80bL_DzrB1LAXkSsajniQ==/lib/x86_64
11-15 09:38:43.917 5264 5504 D SoLoader: Not resolving dependencies for libfb.so
11-15 09:38:43.917 5264 5504 I .myWirelessTes: Thread[70,tid=5504,Native,Thread*=0x75953513f400,peer=0x12f844a8,"OkHttp http://10.0.2.2:8081/..."] recursive blablaempt to load library "/data/app/com.blabla.myWirelessTest-w80bL_DzrB1LblaniQ==/lib/x86_64/libfb.so"
11-15 09:38:43.917 5264 5504 D SoLoader: Loaded: libfb.so
11-15 09:38:43.917 5264 5504 D SoLoader: Loaded: libfb.so
11-15 09:38:44.109 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.109 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.118 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.119 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.137 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.137 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.154 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.155 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.174 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.175 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.192 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.193 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.209 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.210 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.230 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.230 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.247 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.248 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.270 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.271 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.280 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.281 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.299 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.299 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.323 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.324 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.340 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.341 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.358 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.358 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
11-15 09:38:44.379 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 1 (1) 1 6
11-15 09:38:44.380 5264 5399 D eglCodecCommon: setVertexArrayObject: set vao to 0 (0) 1 2
--------- beginning of crash
11-15 09:41:43.212 5264 5497 E AndroidRuntime: FATAL EXCEPTION: com.wix.detox.manager
11-15 09:41:43.212 5264 5497 E AndroidRuntime: Process: com.blabla.myWirelessTest, PID: 5264
11-15 09:41:43.212 5264 5497 E AndroidRuntime: com.wix.detox.common.DetoxErrors$DetoxRuntimeException: Waited for the new RN-context for too long! (180 seconds)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: If you think that's not long enough, consider applying a custom Detox runtime-config in DetoxTest.runTests().
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.reactnative.ReactNativeLoadingMonitor.awaitNewRNContext(ReactNativeLoadingMonitor.kt:59)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.reactnative.ReactNativeLoadingMonitor.getNewContext(ReactNativeLoadingMonitor.kt:24)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.reactnative.ReactNativeExtension.awaitNewReactNativeContext(ReactNativeExtension.kt:109)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.reactnative.ReactNativeExtension.waitForRNBootstrap(ReactNativeExtension.kt:58)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.DetoxManager.initReactNativeIfNeeded(DetoxManager.java:137)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.DetoxManager.access$000(DetoxManager.java:26)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.DetoxManager$2.run(DetoxManager.java:79)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:883)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:100)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at android.os.Looper.loop(Looper.java:214)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at com.wix.detox.Detox$1.run(Detox.java:214)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: at java.lang.Thread.run(Thread.java:919)
11-15 09:41:43.213 5264 5497 I FORESEE_CAPTUREΒ Β Β Β Β Β Β : Uncaught:\ncom.wix.detox.common.DetoxErrors$DetoxRuntimeException: Waited for the new RN-context for too long! (180 seconds)\nIf you think that\'s not long enough, consider applying a custom Detox runtime-config in DetoxTest.runTests().\n\tat com.wix.detox.reactnative.ReactNativeLoadingMonitor.awaitNewRNContext(ReactNativeLoadingMonitor.kt:59)\n\tat com.wix.detox.reactnative.ReactNativeLoadingMonitor.getNewContext(ReactNativeLoadingMonitor.kt:24)\n\tat com.wix.detox.reactnative.ReactNativeExtension.awaitNewReactNativeContext(ReactNativeExtension.kt:109)\n\tat com.wix.detox.reactnative.ReactNativeExtension.waitForRNBootstrap(ReactNativeExtension.kt:58)\n\tat com.wix.detox.DetoxManager.initReactNativeIfNeeded(DetoxManager.java:137)\n\tat com.wix.detox.DetoxManager.access$000(DetoxManager.java:26)\n\tat com.wix.detox.DetoxManager$2.run(DetoxManager.java:79)\n\tat android.os.Handler.handleCallback(Handler.java:883)\n\tat android.os.Handler.dispatchMessage(Handler.java:100)\n\tat android.os.Looper.loop(Looper.java:214)\n\tat com.wix.detox.Detox$1.run(Detox.java:214)\n\tat java.lang.Thread.run(Thread.java:919)\n
11-15 09:41:43.215 5264 5497 E FORESEE_TRIGGERΒ Β Β Β Β Β Β : Uncaught exception: Waited for the new RN-context for too long! (180 seconds)\nIf you think that\'s not long enough, consider applying a custom Detox runtime-config in DetoxTest.runTests().
11-15 09:41:43.323 5264 5497 I Process : Sending signal. PID: 5264 SIG: 9
Well the error can be seen pretty clearly now:
11-15 09:41:43.212 5264 5497 E AndroidRuntime: Process: com.blabla.myWirelessTest, PID: 5264
11-15 09:41:43.212 5264 5497 E AndroidRuntime: com.wix.detox.common.DetoxErrors$DetoxRuntimeException: Waited for the new RN-context for too long! (180 seconds)
11-15 09:41:43.212 5264 5497 E AndroidRuntime: If you think that's not long enough, consider applying a custom Detox runtime-config in DetoxTest.runTests().
Do you run the app in debug or release mode? Namely, is the JS-bundle bundled into the APK or is it loaded from RN's metro server, running locally?
@d4vidi We run it in debug mode(we tried it in release mode too but it doesn't help), and JS-bundle bundled into the APK
In debug mode the bundle is usually loaded from the local server, as the app loads. Is it possible that it is rather big, then?
In any case - as the message says, you can try to provide a longer time-out to DetoxTest.runTests() using a custom configuration. Please revisit your implementation of DetoxTest.java and lmk.
One more thing to check, maybe, in cases where the bundle is loaded from the local metro server, is that the test emulator is properly set up with an adb reverse command for the desired port (default is 8081 IIRC).
@d4vidi
In debug mode the bundle is usually loaded from the local server, as the app loads. Is it possible that it is rather big, then?
In any case - as the message says, you can try to provide a longer time-out toDetoxTest.runTests()using a custom configuration. Please revisit your implementation ofDetoxTest.javaand lmk.
I tried to increase the timeout to 10 minutes and it's still hanging
One more thing to check, maybe, in cases where the bundle is loaded from the local metro server, is that the test emulator is properly set up with an
adb reversecommand for the desired port (default is 8081 IIRC).
No we don't do that, so I'm wondering how it can be when I reload the bundle manually when I press 'R' and all works great..
@barak109 any updates? Something is obviously keeping the app from loading the JS code. Need to find what it is, and whether it's a problem in Detox.
@barak109 any updates? Something is obviously keeping the app from loading the JS code. Need to find what it is and whether it's a problem in Detox.
@d4vidi Unfortunately no, we tried for a month to understand the problem there(figure out why the app doesn't load the JS code) but we didn't find any solution from our side.
Same here