¿Hay una manera de iniciar el emulador de Android en Travis CI construir?
Tengo python wrapper-library para adb donde tengo unit-test que dependen de emulador o dispositivo real (ya que ejecutan comandos adb).
También quiero usar Travis CI como entorno de compilación junto con la ejecución de esas pruebas de unidad para cada compilación.
- Android instrumentación prueba java.lang.UnsatisfiedLinkError en el uso de AndroidJunitRunner y AndroidJUnit4
- Fragmento getActivity () devuelve null en la actividad JUnit test
- Android Studio 1.1, instalación de prueba junit simple
- La clase de prueba de Android falla al compilar en eclipse con error de "falta de coincidencia vinculada"
- Diferencia entre el método runOnUiThread () y la anotación @UiThreadTest
¿Hay alguna manera de tener un emulador de Android disponible en alguna parte de Travis CI, para que las pruebas de unidad puedan ejecutar comandos de adb?
¡Gracias por adelantado!
- ¿Por qué fallan las grandes pruebas de unidad de actividad de Android?
- Android Marshmallow Permisos de Pruebas
- Cómo probar interfaz de escucha se llama dentro de pruebas de unidad de Android
- VerifyError con PowerMock en Android
- (Unidad) Prueba de ArrayAdapter
- ¿Por qué Log.d () no imprime nada al ejecutar la Prueba de unidad local de Android?
- Prueba de unidad Android: connectedAndroidTest no ejecuta mi caso de prueba
- Junit / Mockito - esperar la ejecución del método
De acuerdo con la documentación Travis CI , puede iniciar un emulador con el siguiente script en su .travis.yml
:
# Emulator Management: Create, Start and Wait before_script: - echo no | android create avd --force -n test -t android-19 --abi armeabi-v7a - emulator -avd test -no-skin -no-audio -no-window & - android-wait-for-emulator - adb shell input keyevent 82 &
Simplemente especifique la imagen del sistema que necesita en los components
.
La respuesta de Bruno Parmentier incluye lo que Travis-CI recomienda actualmente, pero tuve problemas con la máquina virtual que se agotaba de memoria. Así que en lugar de ejecutar el emulador mientras se está ejecutando la compilación, cambié mi configuración para ejecutar la compilación, luego iniciar el emulador y luego ejecutar las pruebas.
sudo: false language: android env: global: # switch glibc to a memory conserving mode - MALLOC_ARENA_MAX=2 # wait up to 10 minutes for adb to connect to emulator - ADB_INSTALL_TIMEOUT=10 android: components: - platform-tools - extra-android-m2repository - build-tools-22.0.1 - android-22 - sys-img-armeabi-v7a-android-22 script: - ./gradlew assemble lint after_script: # Emulator Management: Create, Start and Wait - echo no | android create avd --force -n test -t android-22 --abi armeabi-v7a - emulator -avd test -no-skin -no-audio -no-window & - android-wait-for-emulator - adb shell input keyevent 82 & # now run the tests - ./gradlew connectedCheck
- No se puede compilar la aplicación android con ActionBarSherlock como apklib en maven
- Importar la Galería de Android