¿Cómo desplazarse por la pantalla en la prueba de espresso android? Necesito validar el texto presente en la pantalla

Estoy realizando la prueba de abajo para validar el texto en la pantalla, El texto está presente en la vista, pero necesita desplazarse a página para ver el texto manualmente.

Código – ========

onView(withText("Launch")).check(ViewAssertions.matches(isDisplayed())); onView(withText("January 2010")).check(ViewAssertions.matches(isDisplayed())); 

El error siguiente está viniendo, sin embargo el texto está presente en la visión pero necesidad de desplazarse de la página para ver el texto manualmente.

Android.support.test.espresso.base.DefaultFailureHandler $ AssertionFailedWithCauseError: 'aparece en la pantalla para el usuario' no coincide con la vista seleccionada. Se espera: se muestra en la pantalla para el usuario Obtenido: "TextView {id = 2131361941, res-name = project_details_label_tv, visibilidad = VISIBLE, width = 249, altura = 41, has-focus = false, has-focusable = false, has -window-focus = true, is-clickable = falso, es-enabled = true, is-focused = falso, es-focusable = false, is-layout-requested = False, has-input-connection = false, x = 4.0, y = 24.0, text = Estado, input-type = 0, ime-target = false, has-links = false}

No sé cómo se ve este diseño, pero para usarlo

Simplemente realice un ViewActions.scrollTo() antes de su aserción:

  `onView(withText("Launch")).perform(ViewActions.scrollTo()).check(ViewAssertions‌​.matches(isDisplayed()));` 

Necesita tener ScrollView como su vista principal en la estructura.

Si ya tiene LinearLayout, RelativeLayout, tiene que cambiarlo de esta manera:

 <?xml version="1.0" encoding="utf-8"?> <ScrollView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="match_parent" android:layout_height="wrap_content"/> </LinearLayout> 

Simplemente realice un ViewActions.scrollTo() antes de su aserción:

 onView(withText("Launch")).perform(ViewActions.scrollTo()).check(ViewAssertions‌​.matches(isDisplayed())); 

Hay una solución para hacer clic en un botón en una vista de desplazamiento

 onView(withId(R.id.onBottomOfScrollView)).perform(scrollTo(), click()); 

Espresso: cómo desplazarse a la parte inferior de ScrollView

Puede utilizar SWIPE para desplazarse hasta la parte inferior de la pantalla:

Espresso.onView (ViewMatchers.withId (R.id.recyclerView)). Realiza (ViewActions.swipeUp ());

Para mí su funcionamiento agradable.

Pablo

  • Cómo obtener una instancia de android.app.UiAutomation
  • Cómo automatizar el patrón de desbloqueo en un teléfono real utilizando uiautomator?
  • UiAutomator getLastTraversedText ()
  • Android Espresso Ui Test verifica el texto de la etiqueta de ActionPage
  • Appium: Cómo iniciar la aplicación de Android para el perfil de trabajo
  • Tamaño de pantalla en Samsung Tablet 10.1
  • Cómo rellenar la contraseña EditText con Android uiautomator?
  • Prueba Espresso en un módulo separado
  • Error 'adb not installed' al intentar tomar una instantánea con uiautomatorviewer
  • UiAutomator falla en el dispositivo 4.1.2
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.