Stiamo cercando di introdurre il new Android Unit Testing Support nel nostro progetto.Test delle unità Android non funzionante per il progetto di libreria Android
Per il progetto di libreria, non riesce a trovare le classi src/main/java durante l'esecuzione con gradlew.
L'esecuzione del test da Android Studio funziona come previsto. L'esecuzione del test con gradle in un progetto di app funziona come previsto. L'esecuzione del test con gradle in un progetto di libreria non riesce.
Ho creato un progetto di esempio su github, che riproduce il problema in un piccolo progetto.
Con la definizione del plugin gradle apply plugin: 'com.android.application'
funziona correttamente, con la definizione del plug-in apply plugin: 'com.android.library'
, si verifica l'errore.
L'errore è:
home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:11: error: cannot find symbol
assertEquals(2, new SomeClass().sum(1, 1));
^
symbol: class SomeClass
location: class SomeClassTest
/home/user/path/AndroidJvmJunitTestSpike/common/src/test/java/squins/com/common/SomeClassTest.java:16: error: cannot find symbol
new SomeClass().referenceDrawableFromR();
^
symbol: class SomeClass
location: class SomeClassTest
2 errors
:common:compileDebugUnitTestJava FAILED
è questo dovrebbe lavorare? Ho perso qualcosa?
Si dovrebbe girare in modo che i pacchetti si presentino così: "com.squins.common" invece di "squins.com.common". – Daverix
Grazie per averlo scoperto! E 'stato davvero sbagliato, Android Studio chiede "dominio aziendale" nel nuovo wizard di progetto, che ho interpretato come "nome del pacchetto". –
@KeesvanDieren Penso che dovresti postare come risposta. Ho avuto questo stesso problema. 'gradlew clean assemble check'. –