wix / Detox

Gray box end-to-end testing and automation framework for mobile apps
https://wix.github.io/Detox/
MIT License
11.25k stars 1.92k forks source link

Android DetoxRuntimeError: Failed to run application on the device #2605

Closed LiamDotPro closed 3 years ago

LiamDotPro commented 3 years ago

Describe the bug

I'm trying to run my detox test on a CI, In my case it's the App Centre. Building the app is successful but when I try and run a test the runner responds with an error that the app is unable to start.

Here's the notable lines (Full logs for runner can be found in stack trace section:

detox[4980] INFO:  [test.js] DETOX_CLEANUP=true DETOX_CONFIGURATION="android.emu.release" DETOX_FORCE_ADB_INSTALL=false DETOX_READ_ONLY_EMU=false DETOX_REPORT_SPECS=true DETOX_START_TIMESTAMP=1611138864350 DETOX_USE_CUSTOM_LOGGER=true jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
detox[4984] INFO:  [DetoxServer.js] server listening on localhost:49605...
detox[4984] INFO:  Numpad Test Suite is assigned to emulator-11580 (Pixel_XL_API_28)
detox[4984] ERROR: [exec.js/EXEC_FAIL, #31] ""/Users/runner/Library/Android/sdk/platform-tools/adb" -s emulator-11580 shell "ps | grep \"com\.bitvavo$\""" failed with code = 1, stdout and stderr:

-----

detox[4984] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
  (id = -1000) reactNativeReload: {}

-------

 Numpad Test Suite › should load all visible login elements

    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.

      at MonitoredInstrumentation._getInstrumentationCrashError (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:68:12)
      at MonitoredInstrumentation._rejectPendingCrashPromise (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:56:37)
      at MonitoredInstrumentation._onInstrumentationTerminated (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:51:10)
      at Instrumentation._onTerminated (../node_modules/detox/src/devices/drivers/android/tools/Instrumentation.js:52:18)

I've tested the same configuration locally and it's builds and runs the tests without a hitch. Notably running the same tests for IOS on the CI work as expected.

Steps To Reproduce

Created new project via CRNA Follow Detox Integration steps Add App Centre CI via Prebuild

App Centre Pre Build configuration (Uses APP_CENTER_CURRENT_PLATFORM=android)

#!/usr/bin/env bash

if [ -z "$APP_CENTER_CURRENT_PLATFORM" ]
then
    echo "You need define the APP_CENTER_CURRENT_PLATFORM variable in App Center with values android or ios"
    exit
fi

if [ "$APP_CENTER_CURRENT_PLATFORM" == "android" ]
then
    echo "Setup Android simulator"
    SIMULATOR_IMAGE="system-images;android-28;google_apis;x86"
    SIMULATOR_NAME="Pixel_XL_API_28"

    ANDROID_HOME=~/Library/Android/sdk
    ANDROID_SDK_ROOT=~/Library/Android/sdk
    ANDROID_AVD_HOME=~/.android/avd
    PATH="$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools:$PATH"

    echo "Accepts all sdk licences"
    yes | sdkmanager --licenses

    echo "Download Simulator Image"
    sdkmanager --install "$SIMULATOR_IMAGE"

    echo "Create Simulator '$SIMULATOR_NAME' with image '$SIMULATOR_IMAGE'"
    echo "no" | avdmanager --verbose create avd --force --name "$SIMULATOR_NAME" --device "pixel" --package "$SIMULATOR_IMAGE" --tag "google_apis" --abi "x86"

    DETOX_CONFIG=android.emu.release
else
    echo "Install AppleSimUtils"

    brew tap wix/brew
    brew update
    brew install applesimutils

    echo "Install pods "
    cd ios; pod install; cd ..

    DETOX_CONFIG=ios.sim.release
fi

echo "Building the project for Detox tests..."
npx detox build --configuration "$DETOX_CONFIG"

echo "Executing Detox tests..."
npx detox test --configuration "$DETOX_CONFIG" --cleanup

Expected behavior

Builds and runs my tests on android

Detox Trace-Logs

021-01-20T10:34:10.9290610Z > Task :app:packageRelease
2021-01-20T10:34:10.9291220Z > Task :app:assembleRelease
2021-01-20T10:34:13.5386580Z 
2021-01-20T10:34:13.5388040Z > Task :app:transformClassesAndResourcesWithR8ForReleaseAndroidTest
2021-01-20T10:34:13.5392210Z R8: Missing class: org.easymock.IArgumentMatcher
2021-01-20T10:34:13.5393500Z R8: Missing class: org.jmock.core.Constraint
2021-01-20T10:34:22.8198720Z 
2021-01-20T10:34:22.8300130Z > Task :app:packageReleaseAndroidTest
2021-01-20T10:34:22.8401800Z > Task :app:assembleReleaseAndroidTest
2021-01-20T10:34:22.8414060Z > Task :app:assembleAndroidTest
2021-01-20T10:34:22.8414780Z 
2021-01-20T10:34:22.8415790Z Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
2021-01-20T10:34:22.8421080Z Use '--warning-mode all' to show the individual deprecation warnings.
2021-01-20T10:34:22.8422610Z See https://docs.gradle.org/6.3/***guide/command_line_interface.html#sec:command_line_warnings
2021-01-20T10:34:22.8423220Z 
2021-01-20T10:34:22.9541480Z BUILD SUCCESSFUL in 6m 50s
2021-01-20T10:34:22.9544040Z 1645 actionable tasks: 1645 executed
2021-01-20T10:34:23.8733480Z /Users/runner/work/1/s
2021-01-20T10:34:23.8935290Z Executing Detox tests...
2021-01-20T10:34:24.3722460Z detox[4980] INFO:  [test.js] DETOX_CLEANUP=true DETOX_CONFIGURATION="android.emu.release" DETOX_FORCE_ADB_INSTALL=false DETOX_READ_ONLY_EMU=false DETOX_REPORT_SPECS=true DETOX_START_TIMESTAMP=1611138864350 DETOX_USE_CUSTOM_LOGGER=true jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
2021-01-20T10:34:26.3083950Z detox[4984] INFO:  [DetoxServer.js] server listening on localhost:49605...
2021-01-20T10:39:01.6506180Z detox[4984] INFO:  Numpad Test Suite is assigned to emulator-11580 (Pixel_XL_API_28)
2021-01-20T10:39:04.7136450Z detox[4984] ERROR: [exec.js/EXEC_FAIL, #31] ""/Users/runner/Library/Android/sdk/platform-tools/adb" -s emulator-11580 shell "ps | grep \"com\.bitvavo$\""" failed with code = 1, stdout and stderr:
2021-01-20T10:39:04.7142410Z 
2021-01-20T10:39:04.7143220Z detox[4984] ERROR: [exec.js/EXEC_FAIL, #31] 
2021-01-20T10:39:04.7143880Z detox[4984] ERROR: [exec.js/EXEC_FAIL, #31] 
2021-01-20T10:41:13.5059590Z detox[4984] INFO:  Numpad Test Suite: should load all visible login elements
2021-01-20T10:41:13.5073670Z detox[4984] INFO:  Numpad Test Suite: should load all visible login elements [FAIL]
2021-01-20T10:41:13.5076500Z detox[4984] INFO:  Numpad Test Suite: Should attempt to login using 1234
2021-01-20T10:41:13.5080690Z detox[4984] INFO:  Numpad Test Suite: Should attempt to login using 1234 [FAIL]
2021-01-20T10:41:13.5083660Z detox[4984] INFO:  Numpad Test Suite: Should Logout
2021-01-20T10:41:13.5088010Z detox[4984] INFO:  Numpad Test Suite: Should Logout [FAIL]
2021-01-20T10:41:13.5098450Z 
2021-01-20T10:41:13.5430450Z detox[4984] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
2021-01-20T10:41:13.5433430Z   (id = -1000) reactNativeReload: {}
2021-01-20T10:41:13.5433780Z 
2021-01-20T10:41:13.5434070Z Unresponded network requests might result in timeout errors in Detox tests.
2021-01-20T10:41:13.5434310Z 
2021-01-20T10:41:13.5913300Z FAIL e2e/numPad.e2e.js (407.977s)
2021-01-20T10:41:13.5925650Z   Numpad Test Suite
2021-01-20T10:41:13.5927480Z     ✕ should load all visible login elements (1ms)
2021-01-20T10:41:13.5928320Z     ✕ Should attempt to login using 1234
2021-01-20T10:41:13.5928930Z     ✕ Should Logout
2021-01-20T10:41:13.5933370Z 
2021-01-20T10:41:13.5934430Z   ● Numpad Test Suite › should load all visible login elements
2021-01-20T10:41:13.5934680Z 
2021-01-20T10:41:13.5937820Z     DetoxRuntimeError: Failed to run application on the device
2021-01-20T10:41:13.5938050Z 
2021-01-20T10:41:13.5938480Z     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.
2021-01-20T10:41:13.5938900Z 
2021-01-20T10:41:13.5939320Z       at MonitoredInstrumentation._getInstrumentationCrashError (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:68:12)
2021-01-20T10:41:13.5940030Z       at MonitoredInstrumentation._rejectPendingCrashPromise (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:56:37)
2021-01-20T10:41:13.5940740Z       at MonitoredInstrumentation._onInstrumentationTerminated (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:51:10)
2021-01-20T10:41:13.5941500Z       at Instrumentation._onTerminated (../node_modules/detox/src/devices/drivers/android/tools/Instrumentation.js:52:18)
2021-01-20T10:41:13.5941840Z 
2021-01-20T10:41:13.5942580Z   ● Numpad Test Suite › should load all visible login elements
2021-01-20T10:41:13.5942830Z 
2021-01-20T10:41:13.5943060Z     thrown: "Exceeded timeout of 120000 ms for a hook.
2021-01-20T10:41:13.5943860Z     Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."
2021-01-20T10:41:13.5944180Z 
2021-01-20T10:41:13.5944340Z        5 |   });
2021-01-20T10:41:13.5944510Z        6 | 
2021-01-20T10:41:13.5944730Z     >  7 |   beforeAll(async () => {
2021-01-20T10:41:13.5944940Z          |   ^
2021-01-20T10:41:13.5945490Z        8 |     await device.reloadReactNative();
2021-01-20T10:41:13.5946070Z        9 |   });
2021-01-20T10:41:13.5946290Z       10 | 
2021-01-20T10:41:13.5946440Z 
2021-01-20T10:41:13.5946620Z       at numPad.e2e.js:7:3
2021-01-20T10:41:13.5946920Z       at Object.<anonymous> (numPad.e2e.js:2:1)
2021-01-20T10:41:13.5947140Z 
2021-01-20T10:41:13.5947820Z   ● Numpad Test Suite › Should attempt to login using 1234
2021-01-20T10:41:13.5948060Z 
2021-01-20T10:41:13.5948500Z     DetoxRuntimeError: Failed to run application on the device
2021-01-20T10:41:13.5948730Z 
2021-01-20T10:41:13.5949160Z     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.
2021-01-20T10:41:13.5949600Z 
2021-01-20T10:41:13.5950010Z       at MonitoredInstrumentation._getInstrumentationCrashError (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:68:12)
2021-01-20T10:41:13.5950710Z       at MonitoredInstrumentation._rejectPendingCrashPromise (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:56:37)
2021-01-20T10:41:13.5951420Z       at MonitoredInstrumentation._onInstrumentationTerminated (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:51:10)
2021-01-20T10:41:13.5952340Z       at Instrumentation._onTerminated (../node_modules/detox/src/devices/drivers/android/tools/Instrumentation.js:52:18)
2021-01-20T10:41:13.5969740Z 
2021-01-20T10:41:13.5970750Z   ● Numpad Test Suite › Should attempt to login using 1234
2021-01-20T10:41:13.5970990Z 
2021-01-20T10:41:13.5971260Z     thrown: "Exceeded timeout of 120000 ms for a hook.
2021-01-20T10:41:13.5972090Z     Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."
2021-01-20T10:41:13.5972390Z 
2021-01-20T10:41:13.5972560Z        5 |   });
2021-01-20T10:41:13.5972740Z        6 | 
2021-01-20T10:41:13.5972950Z     >  7 |   beforeAll(async () => {
2021-01-20T10:41:13.5973170Z          |   ^
2021-01-20T10:41:13.5973400Z        8 |     await device.reloadReactNative();
2021-01-20T10:41:13.5973650Z        9 |   });
2021-01-20T10:41:13.5973820Z       10 | 
2021-01-20T10:41:13.5973940Z 
2021-01-20T10:41:13.5974530Z       at numPad.e2e.js:7:3
2021-01-20T10:41:13.5974870Z       at Object.<anonymous> (numPad.e2e.js:2:1)
2021-01-20T10:41:13.5975340Z 
2021-01-20T10:41:13.5976020Z   ● Numpad Test Suite › Should Logout
2021-01-20T10:41:13.5976210Z 
2021-01-20T10:41:13.5976460Z     DetoxRuntimeError: Failed to run application on the device
2021-01-20T10:41:13.5976870Z 
2021-01-20T10:41:13.5977320Z     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.
2021-01-20T10:41:13.5977730Z 
2021-01-20T10:41:13.5978200Z       at MonitoredInstrumentation._getInstrumentationCrashError (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:68:12)
2021-01-20T10:41:13.5978950Z       at MonitoredInstrumentation._rejectPendingCrashPromise (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:56:37)
2021-01-20T10:41:13.5979670Z       at MonitoredInstrumentation._onInstrumentationTerminated (../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:51:10)
2021-01-20T10:41:13.5980320Z       at Instrumentation._onTerminated (../node_modules/detox/src/devices/drivers/android/tools/Instrumentation.js:52:18)
2021-01-20T10:41:13.5980640Z 
2021-01-20T10:41:13.5981250Z   ● Numpad Test Suite › Should Logout
2021-01-20T10:41:13.5981440Z 
2021-01-20T10:41:13.5981720Z     thrown: "Exceeded timeout of 120000 ms for a hook.
2021-01-20T10:41:13.5982590Z     Use jest.setTimeout(newTimeout) to increase the timeout value, if this is a long-running test."
2021-01-20T10:41:13.5982880Z 
2021-01-20T10:41:13.5983040Z        5 |   });
2021-01-20T10:41:13.5983230Z        6 | 
2021-01-20T10:41:13.5983430Z     >  7 |   beforeAll(async () => {
2021-01-20T10:41:13.5983690Z          |   ^
2021-01-20T10:41:13.5983930Z        8 |     await device.reloadReactNative();
2021-01-20T10:41:13.5984170Z        9 |   });
2021-01-20T10:41:13.5984370Z       10 | 
2021-01-20T10:41:13.5984510Z 
2021-01-20T10:41:13.5984690Z       at numPad.e2e.js:7:3
2021-01-20T10:41:13.5985180Z       at Object.<anonymous> (numPad.e2e.js:2:1)
2021-01-20T10:41:13.5985410Z 
2021-01-20T10:41:13.7206050Z detox[4980] ERROR: [cli.js] Error: Command failed: jest --config e2e/config.json --testNamePattern '^((?!:ios:).)*$' --maxWorkers 1 e2e
2021-01-20T10:41:13.7208790Z 
2021-01-20T10:41:13.7296000Z 
2021-01-20T10:41:13.7475230Z ##[error]The process '/bin/bash' failed with exit code 1
2021-01-20T10:41:13.7492290Z ##[error]Bash failed with error: The process '/bin/bash' failed with exit code 1
2021-01-20T10:41:13.7499510Z ##[section]Finishing: Pre Build Script
2021-01-20T10:41:13.8335630Z ##[section]Starting: Checkout frontend-app-next@master to s
2021-01-20T10:41:13.8363810Z 

Device logs (adb logcat)

Screenshots

Environment (please complete the following information):

noomorph commented 3 years ago

Any chance you can try device.launchApp({ newInstance: true }) instead of device.reloadReactNative() and report back, if it changes anything, please?

LiamDotPro commented 3 years ago

@noomorph thanks for checking this out, I will try and run this for you later 👍

tdekoning commented 3 years ago

@noomorph We're having the same errors in our app since we've upgraded to 18.2.1. Doing device.launchApp({newInstance: true}) did not fix this problem for us.

LiamDotPro commented 3 years ago

I've not had the time to create a reproducible demo but this fix did not fix the problem for us either, we have since completely disabled detox for android as we couldn't get it working. @noomorph @tdekoning

dushmantha commented 3 years ago

I have got the same issue when detox run on Android

Environment (please complete the following information):

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. at MonitoredInstrumentation._getInstrumentationCrashError (/Users/.../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:68:12) at MonitoredInstrumentation._rejectPendingCrashPromise (/Users/../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:56:37) at MonitoredInstrumentation._onInstrumentationTerminated (/Users/../node_modules/detox/src/devices/drivers/android/tools/MonitoredInstrumentation.js:51:10) at Instrumentation._onTerminated (/Users/..//node_modules/detox/src/devices/drivers/android/tools/Instrumentation.js:52:18) at processTicksAndRejections (internal/process/task_queues.js:93:5)

"detox": "^17.11.4" React Native: "0.62.2" OS: macOS

/////////////////////////////////////////////////////////////////////////////////

Detox trace logs `Usage: npm

where is one of:

access          npm access public [<package>]
                npm access restricted [<package>]
                npm access grant <read-only|read-write> <scope:team> [<package>]
                npm access revoke <scope:team> [<package>]
                npm access 2fa-required [<package>]
                npm access 2fa-not-required [<package>]
                npm access ls-packages [<user>|<scope>|<scope:team>]
                npm access ls-collaborators [<package> [<user>]]
                npm access edit [<package>]

adduser         npm adduser [--registry=url] [--scope=@orgname] [--auth-type=legacy] [--always-auth]

                aliases: login, add-user

audit
                npm audit [--json] [--production]
                npm audit fix [--force|--package-lock-only|--dry-run|--production|--only=(dev|prod)]

bin             npm bin [--global]

bugs            npm bugs [<pkgname>]

                alias: issues

cache           npm cache add <tarball file>
                npm cache add <folder>
                npm cache add <tarball url>
                npm cache add <git url>
                npm cache add <name>@<version>
                npm cache clean
                npm cache verify

ci              npm ci

completion      source <(npm completion)

config          npm config set <key> <value>
                npm config get [<key>]
                npm config delete <key>
                npm config list [--json]
                npm config edit
                npm set <key> <value>
                npm get [<key>]

                alias: c

dedupe          npm dedupe

                aliases: ddp, find-dupes

deprecate       npm deprecate <pkg>[@<version>] <message>

dist-tag        npm dist-tag add <pkg>@<version> [<tag>]
                npm dist-tag rm <pkg> <tag>
                npm dist-tag ls [<pkg>]

                alias: dist-tags

docs            npm docs <pkgname>
                npm docs .

                alias: home

doctor          npm doctor

edit            npm edit <pkg>[/<subpkg>...]

explore         npm explore <pkg> [ -- <command>]

fund            npm fund [--json]

                common options: npm fund [--browser] [[<@scope>/]<pkg> [--which=<fundingSourceNumber>]

get             npm get <key> <value> (See `npm config`)

help

help-search     npm help-search <text>

hook

init
                npm init [--force|-f|--yes|-y|--scope]
                npm init <@scope> (same as `npx <@scope>/create`)
                npm init [<@scope>/]<name> (same as `npx [<@scope>/]create-<name>`)

                aliases: create, innit

install
                npm install (with no args, in package dir)
                npm install [<@scope>/]<pkg>
                npm install [<@scope>/]<pkg>@<tag>
                npm install [<@scope>/]<pkg>@<version>
                npm install [<@scope>/]<pkg>@<version range>
                npm install <alias>@npm:<name>
                npm install <folder>
                npm install <tarball file>
                npm install <tarball url>
                npm install <git:// url>
                npm install <github username>/<github project>

                aliases: i, isntall, add
                common options: [--save-prod|--save-dev|--save-optional] [--save-exact] [--no-save]

install-ci-test
                npm install-ci-test [args]
                Same args as `npm ci`

                alias: cit

install-test
                npm install-test [args]
                Same args as `npm install`

                alias: it

link            npm link (in package dir)
                npm link [<@scope>/]<pkg>[@<version>]

                alias: ln

logout          npm logout [--registry=<url>] [--scope=<@scope>]

ls              npm ls [[<@scope>/]<pkg> ...]

                aliases: list, la, ll

org             npm org set orgname username [developer | admin | owner]
                npm org rm orgname username
                npm org ls orgname [<username>]

outdated        npm outdated [[<@scope>/]<pkg> ...]

owner           npm owner add <user> [<@scope>/]<pkg>
                npm owner rm <user> [<@scope>/]<pkg>
                npm owner ls [<@scope>/]<pkg>

                alias: author

pack            npm pack [[<@scope>/]<pkg>...] [--dry-run]

ping            npm ping
                ping registry

prefix          npm prefix [-g]

profile         npm profile enable-2fa [auth-only|auth-and-writes]
                npm profile disable-2fa
                npm profile get [<key>]
                npm profile set <key> <value>

prune           npm prune [[<@scope>/]<pkg>...] [--production]

publish         npm publish [<tarball>|<folder>] [--tag <tag>] [--access <public|restricted>] [--dry-run]

                Publishes '.' if no argument supplied

                Sets tag `latest` if no --tag specified

rebuild         npm rebuild [[<@scope>/<name>]...]

                alias: rb

repo            npm repo [<pkg>]

restart         npm restart [-- <args>]

root            npm root [-g]

run-script      npm run-script <command> [-- <args>...]

                aliases: run, rum, urn

search          npm search [--long] [search terms ...]

                aliases: s, se, find

set             npm set <key> <value> (See `npm config`)

shrinkwrap      npm shrinkwrap

star            npm star [<pkg>...]
                npm unstar [<pkg>...]

                alias: unstar

stars           npm stars [<user>]

start           npm start [-- <args>]

stop            npm stop [-- <args>]

team            npm team create <scope:team> [--otp <otpcode>]
                npm team destroy <scope:team> [--otp <otpcode>]
                npm team add <scope:team> <user> [--otp <otpcode>]
                npm team rm <scope:team> <user> [--otp <otpcode>]
                npm team ls <scope>|<scope:team>
                npm team edit <scope:team>

test            npm test [-- <args>]

                aliases: tst, t

token           npm token list
                npm token revoke <tokenKey>
                npm token create [--read-only] [--cidr=list]

uninstall       npm uninstall [<@scope>/]<pkg>[@<version>]... [--save-prod|--save-dev|--save-optional] [--no-save]

                aliases: un, unlink, remove, rm, r

unpublish
                npm unpublish [<@scope>/]<pkg>@<version>
                npm unpublish [<@scope>/]<pkg> --force

update          npm update [-g] [<pkg>...]

                aliases: up, upgrade, udpate

version         npm version [<newversion> | major | minor | patch | premajor | preminor | prepatch | prerelease [--preid=<prerelease-id>] | from-git]
                (run in package dir)
                'npm -v' or 'npm --version' to print npm version (6.14.10)
                'npm view <pkg> version' to view a package's published version
                'npm ls' to inspect current package/dependency versions

view            npm view [<@scope>/]<pkg>[@<version>] [<field>[.subfield]...]

                aliases: v, info, show

whoami          npm whoami [--registry <registry>]
                (just prints username according to given registry)

npm -h quick help on npm -l display full usage info npm help search for help on npm help npm involved overview

Specify configs in the ini-formatted file: or on the command line via: npm --key value Config info can be viewed via: npm help config

npm@6.14.10 /usr/local/lib/node_modules/npm`

d4vidi commented 3 years ago

@LiamDotPro I would appreciate it if you try to run on Android again and provide these two assets:

no-response[bot] commented 3 years ago

This issue has been automatically closed because there has been no response to our request for more information from the original author.

For more information on bots in this reporsitory, read this discussion.

janaka120 commented 3 years ago

Any update on this issue. I'm having the same issue.

d4vidi commented 3 years ago

@janaka120 @conor909 this error is terribly generic. Please open Android issues with the requested details - we promise to do our best to help!

janaka120 commented 3 years ago

@d4vidi , Thanks for your reply.

The problem I had was, my Android SDK version is 29. By default, Google has disabled all clear-text network traffic for SDK >= v28. So I have to explicitly configure permission. I referred to this documentation(Title - Problem: The app loads but tests fail to start in SDK >= 28).

https://github.com/wix/Detox/blob/master/docs/Introduction.Android.md#6-enable-clear-text-unencrypted-traffic-for-detox

I think this will help to someone.

d4vidi commented 3 years ago

Ah yes, this is exactly what the guide is for. Perhaps one day we'd be able to provide a better solution for this: #1964