Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


¿Cómo estructura el directorio de prueba del proyecto en Android Studio?

No hay convención para esto todavía, pero ¿cómo puedo estructurar el directorio de prueba para Android Studio, ahora que lo que se indica en la página de los fundamentos de pruebas para Android es diferente ?

En particular, cualquier punteros sobre cómo obtener jUnit pruebas en marcha y funcionando en Android Studio sería útil, gracias.

  • ¿Cómo agregar información de perfil en el cajón de navegación de Android?
  • Los datos de análisis para android-L fallaron
  • Firma de solicitud con varios certificados
  • Habilitar el pinch-zoom de viewport en Phonegap La aplicación de Android no tiene efecto
  • Android ActionBar Personalizar Buscar Ver
  • ViewPager dentro de la cuestión del fragmento
  • Además, el uso de la herramienta android no ayuda realmente ahora, ya que las cosas son un poco diferentes con Android Studio.

    Actualizar:

    He intentado configurar la carpeta de prueba y ejecutarla, pero todo lo que estoy recibiendo es el siguiente:

     Running tests Test running startedTest running failed: Unable to find instrumentation info for:ComponentInfo{<project-package-name>/android.test.InstrumentationTestRunner} Empty test suite. 

    También he intentado agregar un archivo estándar de AndroidManifest.xml para las pruebas allí.

  • Cómo integrar OpenCV en el proyecto Qt Creator Android
  • GROUP BY con CursorLoader
  • ¿Cómo puedo eliminar un botón o hacerlo invisible en Android?
  • ¿Es el cierre y la reapertura de las instancias de Realm malas para el rendimiento?
  • Android -RecyclerView en kitkat
  • diferencia entre cocos2d-x vs cocos2d-js
  • 4 Solutions collect form web for “¿Cómo estructura el directorio de prueba del proyecto en Android Studio?”

    ACTUALIZAR

    A partir de Build Tools 19.1.0 y build plugin 0.11.0 archivos build.gradle tiene que tener testPackageName renombrado a testApplicationId (también packageName debe ser renombrado a androidId )

    A partir de build plugin 0.9.0 la carpeta instrumentTest se renombra a androidTest . Eso es todo lo que necesitamos para las pruebas.

    Aquí hay un ejemplo de 0.11. + DSL

     android { compileSdkVersion 19 buildToolsVersion "19.1.0" defaultConfig { minSdkVersion 16 targetSdkVersion 19 versionCode 1 versionName "1.0" androidId "org.homelab.lab" testApplicationId "org.homelab.lab.test" testInstrumentationRunner "org.homelab.lab.test.Runner" } ... } 

    GOTCHAS : si su archivo de compilación contiene definiciones de testPackageName y testInstrumentationRunner , elimínelos

    Para la versión 0.5.0 – 0.8. +

    Android Studio utiliza Gradle plugin versión 0.5. + Que sigue los principios de Gradle SourceDir.

    Estructura del proyecto Android Studio

    Cómo hacer que funcione:
    1.update SDK
    2.Instalar o actualizar Gradle a 1.6 (informó problemas con 1.7) o pegar con gradle envoltura
    3.no utilice Android Studio para ejecutar la tarea de instrumentación, utilice el comando gradle

     gradle connectedCheck 

    El uso 4.don't mismo paquete para la prueba y apk principal
    5.cheque los resultados usando el navegador

     <project>/build/reports/instrumentTests/index.html 

    Gotchas:
    Si el paquete de prueba y el paquete principal son los mismos, puede crear TestSuite vacío. El resultado es engañoso ya que Gradle no informa de problemas, pero los informes muestran que no se ha probado ninguna clase.

    EDITAR:

    A continuación se muestra la parte de build.gradle que configura las pruebas de instrumento requeridas antes de 0.9.0:

     android { compileSdkVersion 14 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 14 targetSdkVersion 17 testPackageName "org.homelab.lab.test" testInstrumentationRunner "org.homelab.lab.test.Runner" } ... } 

    Proyecto de ejemplo https://github.com/swavkulinski/android-studio-instrumentation-test

    Ahora en Android Studio puede configurar InstrumentTests simplemente siguiendo la convención de colocar las pruebas en el directorio instrumentDirectory. Gradle sólo necesita saber de cualquier depencies que tenga, que en mi caso es Robotium:

    Android Studio Captura de pantalla

     dependencies { androidTestCompile 'com.jayway.android.robotium:robotium-solo:5.0.+' } 

    Cuando la prueba haya terminado, los resultados se mostrarán en la GUI, por lo que no tendrá que usar ninguna línea de comandos. También puede hacer clic con el botón secundario en el módulo por encima de la prueba JUnit para ejecutar todas las pruebas JUnit.

    Yo estaba experimentando este problema también. AndroidStudio sólo estaba construyendo e instalando la aplicación principal APK en el dispositivo y fallando las pruebas con el siguiente mensaje:

    El funcionamiento de la prueba se inició El proceso de ejecución falló: No se pudo encontrar la información de la instrumentación para: ComponentInfo {com.example.app.test / android.test.InstrumentationTestRunner}

    Conjunto de pruebas vacío.

    Sin embargo, ejecutar el objetivo de la gradación de connectedCheck generaba e instalaba dos APK y ejecutaba con éxito las pruebas de instrumentación. Resulta que puedes pedirle a Gradle que ensamble e instale la instrumentación APK solo ejecutando el objetivo installDebugAndroidTest . Después de ejecutar este objetivo, AndroidStudio fue capaz de ejecutar pruebas de instrumentación muy bien, y fue capaz de incluso adjuntar el depurador! Supongo que tendrá que actualizar la instrumentación APK cada vez que cambie las pruebas en sí, pero no de otra manera.

    Los APK de instrumentación instalados en el dispositivo se pueden listar ejecutando: adb shell pm list instrumentation

    Tengo otra manera de resolver este problema, si su razón es sólo el problema de la configuración de ejecución.

    Comprueba tu configuración de ejecución, si la configuración de tu proyecto es Android Tests pero no Android Application y luego te enfrentarás

     "Running tests Test running startedTest running failed: Unable to find instrumentation info for:ComponentInfo{<project-package-name>/android.test.InstrumentationTestRunner} Empty test suite." 

    Así que elimine la configuración de las pruebas de Android y añada una configuración de ejecución de aplicación de Android para su peoject, puede ejecutarlo.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.