Marco espresso
1. Preparación
1.1 Configuración de dependencia
1.2 Eliminar interferencia
2. Arquitectura espresso
2.1 Vista de posicionamiento (onView / onData)
2.2 [Vista de operación (realizar)] (# Vista de operación)
2.3 [Vista de afirmación (verificación)] (# Vista de afirmación)
Preparación
Configuración de dependencia
1. Agregar dependencias
androidTestImplementation('com.android.support.test.espresso:espresso-core:3.0.1')
androidTestImplementation 'com.android.support.test:runner:1.0.2'
implementation files('libs/mockito-core-2.21.0.jar')
testImplementation 'junit:junit:4.12'
2. Configure el corredor de prueba
Configure testIntrumentRunner en el área defaultConfig del archivo build.gradle en el módulo de la aplicación
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
Eliminar interferencias
En las opciones de desarrollador, desactive algunas configuraciones que puedan afectar la transición de animación.Arquitectura espresso
Espresso tiene tres clases importantes, a saber, Matchers, ViewAction y ViewAssertions, donde Matchers a menudo necesita encontrar componentes de la interfaz de usuario o filtrar la interfaz de usuario a través de condiciones coincidentes, y ViewAction es simular usuarios El comportamiento de la interfaz de operación, ViewAssertions transforma y valida la vista que simula la operación de comportamiento1. Vista de posicionamiento (onView / onData)
La clase de elementos de posicionamiento es com.android.support.test.espresso.Espresso. Hay dos métodos onView () y onData () en esta clase para ubicar el nombre del método View normal: com.android.support.test.espresso.Espresso.onVew ( ) Método de declaración pública estática ViewInteraction onView (final MatcherLocalice el
nombre del método View onData () del adaptador com.android.support.test.espresso.Espresso.onData ()
declaración del método público estático DataInteraction onData (Matcher <? Extends Object> dataMatcher)
principio de posicionamiento En una fila en el
parámetro de entrada, DataMatchers se usa para expresar ViewMatchers.instanceOf, que es la
clase de vista del adaptador heredado que se encuentra
. . .
El valor de retorno DataInteraction representa el conjunto de datos que se puede manipular android.support.test.espresso.DataInteraction
En segundo lugar, operar la Vista (realizar)
Realizar una operación en un elemento (realizar) ViewInteraction / DataInteraction perform () se puede encadenar para llamar a viewInteraction.perform (xx1) .perform (xx2) ...; parámetro android.support.test.espresso.action.ViewActions acciones comunes en la clase de herramienta ViewActions click (): haga clic en tipo de operación Text (): ingrese texto clearText (): borre texto replaceText (): reemplace texto. . .Tres, afirmar Ver (verificar)
Tres, juzgue el
método de verificación de resultado de ejecución check () android.support.test.espresso.ViewInteraction.check ()
parámetros entrantes ViewAssertion ViewAssertions clase de herramienta
Cuatro, sincronización de subprocesos
Cuarto, sincronización de hilos
IddlingResoureces
https://developer.android.google.cn/reference/android/support/test/uiautomator/UiWatcher
Referencias
https://www.jianshu.com/p/c5da84eae63b
https://www.jianshu.com/p/474f276986ac
https://blog.csdn.net/u013247461/article/details/81042763