2015-10-14 10 views
20

Ho seguito this guide per creare un file di test JUnit per il mio modulo Android principale (chiamiamolo "modulo-a"), in Android Studio v1.4.Android: ignora l'istruzione "testClass" di Gradle per un progetto di dipendenza

Il mio "modulo-a" ha una dipendenza da una libreria esterna fornita come file .aar e per la quale ho dovuto creare un modulo dedicato.

Questa dipendenza causa un errore:

Quando clic destro sul file di test Java e colpire "Run MyTestName", non riesce con questo errore

Error:Gradle: 
FAILURE: Build failed with an exception. 

* What went wrong: 
Task 'testClasses' not found in project ':module-b'. 

eliminando la dipendenza del modulo-b risolve il problema .

Estratto del modulo-un build.gradle:

compile project(':module-b') 

modulo-b build.gradle:

configurations.create("default") 
artifacts.add("default", file('library-b.aar')) 

Come devo configurare Gradle in modo che non tenta di eseguire il testClasses compito su "module-b"?

risposta

33

Non ho trovato un modo per saltare l'attività testClasses per modulo-b: sembra che le azioni avviate da Android Studio (come l'esecuzione di un test JUnit) eseguano comandi Gradle che non possono essere modificati . Nel mio caso:

Information:Gradle: Executing tasks: 
[:module-a:prepareFree_flavorDebugUnitTestDependencies, 
:module-a:generateFree_flavorDebugSources, 
:module-a:mockableAndroidJar, 
:module-a:assembleFree_flavorDebug, 
:module-a:assembleFree_flavorDebugUnitTest, 
:module-b:testClasses] 

ho trovato una soluzione per il mio problema, però:

Aggiungere il seguente codice al modulo-b build.gradle:

task testClasses { 
    doLast { 
     println 'This is a dummy testClasses task' 
    } 
} 
Problemi correlati