diff options
Diffstat (limited to 'android-test/README.md')
-rw-r--r-- | android-test/README.md | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/android-test/README.md b/android-test/README.md new file mode 100644 index 00000000..f6240051 --- /dev/null +++ b/android-test/README.md @@ -0,0 +1,50 @@ +Android Test +============ + +This module runs Okio's test suite on a connected Android emulator or device. It requires the same +set-up as [OkHttp's android-test module][okhttp_android_test]. + +In brief, configure the Android SDK and PATH: + +``` +export ANDROID_SDK_ROOT=/Users/$USER/Library/Android/sdk +export PATH=$PATH:$ANDROID_SDK_ROOT/tools/bin:$ANDROID_SDK_ROOT/platform-tools +``` + +Use `logcat` to stream test logs: + +``` +adb logcat '*:E' TestRunner:D TaskRunner:D GnssHAL_GnssInterface:F DeviceStateChecker:F memtrack:F +``` + +Then run the tests: + +``` +./gradlew :android-test:connectedAndroidTest +``` + +Or just a single test: + +``` +./gradlew :android-test:connectedAndroidTest -Pandroid.testInstrumentationRunnerArguments.class=okio.SystemFileSystemTest +``` + + +### Watch Out For Crashing Failures + +Some of Okio's tests can cause the test process to crash. The test will be reported as a failure +with a message like this: + +> Test failed to run to completion. Reason: 'Instrumentation run failed due to 'Process crashed.''. +> Check device logcat for details + +When this happens, it's possible that tests are missing from the test run! One workaround is to +exclude the crashing test and re-run the rest. You can confirm that the test run completed normally +if a `run finished` line is printed in the logcat logs: + +``` +01-01 00:00:00.000 12345 23456 I TestRunner: run finished: 2976 tests, 0 failed, 3 ignored +``` + + +[okhttp_android_test]: https://github.com/square/okhttp/tree/master/android-test |