studio que para flavors flavor descargar configurar android junit gradle junit4 robolectric

que - flavors android gradle



Junit testing con Gradle para un proyecto de Android (5)

Estoy intentando que las pruebas (junit y robolectric) funcionen en un proyecto de Android pero estoy totalmente atascado. Mi problema principal es que todas las pruebas que encontré con gradle de alguna manera activan el complemento java y luego aparece este error:

The ''java'' plugin has been applied, but it is not compatible with the Android plugins.

La única salida que veo en este momento es dividirse en proyecto de prueba y aplicación, pero me gustaría evitar eso. ¡Cualquier ejemplo / consejo sería muy apreciado!

En la documentación oficial no se mencionan las pruebas unitarias, solo las pruebas de instrumentación, pero quiero que las pruebas unitarias obtengan resultados rápidamente.


AndroidStudio y el nuevo complemento Gradle de Android ahora ofrecen soporte oficial para pruebas de unidad.

Esto es compatible con Android Studio 1.1+ y Android Gradle plugin versión 1.1.0+

Las dependencias ahora se pueden declarar como testCompile:

dependencies { testCompile ''junit:junit:4.12'' testCompile "org.mockito:mockito-core:1.9.5" }

Más detalles aquí: tools.android.com/tech-docs/unit-testing-support .




Esto es lo que funcionó solo para mí:

androidTestCompile ''net.bytebuddy:byte-buddy-android:0.7.8''


No necesitas el complemento de Java, ya que Android se encargará de lo que más necesites, por lo que he visto hasta ahora.

Logré que mis pruebas de Robolectric y Junit se ejecutaran a través del blog de este hombre: http://tryge.com/2013/02/28/android-gradle-build/

Mi archivo build.gradle tiene este aspecto (donde mis archivos de prueba están en el directorio {projectdir} / prueba.

... // Unit tests sourceSets { unitTest { java.srcDir file(''test'') resources.srcDir file(''test/resources'') } } dependencies { unitTestCompile files("$project.buildDir/classes/debug") unitTestCompile ''junit:junit:4.11'' unitTestCompile ''org.robolectric:robolectric:2.1.1'' unitTestCompile ''com.google.android:android:4.0.1.2'' } configurations { unitTestCompile.extendsFrom runtime unitTestRuntime.extendsFrom unitTestCompile } task unitTest(type:Test, dependsOn: assemble) { description = "run unit tests" testClassesDir = project.sourceSets.unitTest.output.classesDir classpath = project.sourceSets.unitTest.runtimeClasspath } build.dependsOn unitTest