"unknown-sdk" device when executing tests in Jenkins

AndroidJenkinsSpoonSpoon Gradle-Plugin

Android Problem Overview


I have a strange situation with Jenkins when trying to run the tests.

The configuration of the job clearly specifies to run the tests on this specific avd: "hudson_en-US_160_HVGA_android-18_armeabi-v7a", but for some odd reasons, during the build process, 2 devices are found. One of the devices is the previous one, but the other is called "unknown-sdk".

enter image description here

The tests are successfully executed on the specific avd, and fail on "unknown-sdk":

The relevant portion of the log:

> [SR.runTests] Executing instrumentation suite on 2 > device(s).
> [SR.runTests] [emulator-8215] Starting > execution.
> [SR.runTests] [localhost:8216] Starting > execution. > > Running am instrument -w -r -e class com.smoke.tests.LoginTest > com.muume.dev.test/android.support.test.runner.AndroidJUnitRunner on > unknown-sdk-localhost:8216 > > 2015-06-17 11:54:05 [SDR.printStream] [localhost:8216] STDOUT 11:54:05 > I/InstrumentationResultParser: test run failed: 'Unable to find > instrumentation info for: > ComponentInfo{com.muume.dev.test/android.support.test.runner.AndroidJUnitRunner}

As you can see, it detected 2 devices: emulator-8215 which is the known avd, and localhost-8216 which is the unknown and causes the problems.

My question is how to restrict the tests to run only one single emulator, and from where did the "unknown-sdk-localhost" comes from.

Android Solutions


Solution 1 - Android

"unknown-sdk" is what it tells adb while the emulator is still busy loading itself.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionAndy ResView Question on Stackoverflow
Solution 1 - AndroidPnemonicView Answer on Stackoverflow