studio android unit-testing junit android-espresso

studio - Android Espresso testing ''Imposible resolver el símbolo'' InstrumentationRegistry ''''



espresso android studio (3)

Compruebe qué tipo de prueba utiliza.

InstrumentationRegistry se usa para pruebas instrumentadas que usan un emulador o dispositivo y se colocan en src / androidTest y usan config androidTestCompile .
Si usa pruebas de unidad local para JVM de la carpeta src / test, debe usar config testCompile

testImplementation ''com.android.support.test:runner:1.0.2''

Después de eso, puede importar InstrumentationRegistry, pero obtendrá otros errores en tiempo de ejecución.

Estoy tratando de importar

import android.support.test.InstrumentationRegistry;

mi archivo build.gradle

androidTestCompile ''com.android.support.test:testing-support-lib:0.1'' androidTestCompile ''com.android.support.test:runner:0.2'' androidTestCompile ''com.android.support.test:rules:0.2'' androidTestCompile ''com.android.support.test.espresso:espresso-core:2.2.2''

en la configuración por defecto:

defaultConfig { testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" }

¿Hay una biblioteca que me falta aquí? Estoy tratando de importar InstrumentationRegistry pero no lo reconoce!


parece que, com.android.support.test había excluido recientemente de algún otro paquete (sin tener idea de cuál), lo que también dio lugar a que android.support.test.InstrumentationRegistry sea ​​desconocido; sin excluirlo de com.android.support.test:runner solucionó el problema para mí.

androidTestImplementation ("com.android.support.test:runner:1.0.2") { // exclude group: "com.android.support.test" exclude group: "com.android.support" }

básicamente, androidTestImplementation necesita contener com.android.support.test una vez.


tratar

compilar ''com.android.support.test: runner: 0.2''

en lugar de

testCompile ''com.android.support.test: runner: 0.2''