Cómo desplazarse y desplazarse hasta el último en Appium

Estoy recibiendo algunas imágenes de la API y no sé el número y ahora quiero probar la interfaz de usuario en Android a través de Appium y quiero desplácese hasta la última imagen. ¿Cómo puedo hacer esto y también no sé lo que el título de la API está llegando para que pueda ScrollTo ("Título") y también no soy capaz de deslizar hasta el último. ¿Hay alguna manera?

4 Solutions collect form web for “Cómo desplazarse y desplazarse hasta el último en Appium”

No hay forma de saber con certeza si se ha desplazado hasta el último utilizando appium porque no hay informes de interfaz de usuario para los bordes de una vista de desplazamiento.

Una forma de saber que ha llegado al final de una vista de desplazamiento sin confiar en devs es comparar la lista de todos los niños de la vista de desplazamiento cada vez que pase. Si todos los niños son exactamente iguales, has llegado al final. Un ejemplo de xpath para esto se vería como //android.widget.View[@content-desc="Your scrollview]//* , que llevaría a todos los niños y descendientes.Una vez que tenga una lista para comparar, compruebe el contenido de todos Niños nodos Esto sólo funcionará si hay algo único en estos elementos Si todos los elementos son completamente generales, no habrá nada para comparar y esto no será confiable. Pregunte a los desarrolladores para agregar las descripciones de contenido o datos de accesibilidad a los elementos si es posible .

Otra opción sería que los desarrolladores integraran una vista invisible única en la parte superior e inferior de la vista de desplazamiento. De esa manera, si puede ser encontrado por el conductor, usted sabe que ha alcanzado el borde mismo de la vista. Si ya hay elementos únicos en los bordes de su vista de desplazamiento, puede utilizarlos.

Al final, los desarrolladores de la aplicación pueden realmente ayudar en el proceso de desplazamiento, pero espero que el truco de comparar los niños del scrollview actual puede ayudarle.

Puede usar las dimensiones de la pantalla para desplazarse hacia abajo:

  public void scrollDown() { Dimension size = driver.manage().window().getSize(); int x = size.getWidth() / 2; int starty = (int) (size.getHeight() * 0.60); int endy = (int) (size.getHeight() * 0.10); driver.swipe(x, starty, x, endy, 2000); } 

Puede almacenar todas las imágenes en una lista utilizando su localizador disponible. A continuación, utilice driver.scrollToExact(list.get(list.size()).getAttribute("name"));

Ejemplo:

 List<mobileElement> images = driver.findElementsByClass("<locator>"); driver.scrollToExact(images.get(images.size()).getAttribute("name")); 

o

 driver.scrollToExact(images.get(images.size()).getText()); 
  @Test public void testScroll()throws Exception { for(int i=0;i<4;i++) { Thread.sleep(2000); if (driver.findElement(By.name("end_item")).isDisplayed()) { driver.findElement(By.name("end_item")).click(); break; } else { horizontalScroll(); } } } public void verticalScroll() { size=driver.manage().window().getSize(); int y_start=(int)(size.height*0.60); int y_end=(int)(size.height*0.30); int x=size.width/2; driver.swipe(x,y_start,x,y_end,4000); } 

El ejemplo anterior funciona con scroll vertical y se basa en el ejemplo dado en este blog para desplazamiento horizontal. Espero que esto funcione para ti.

  • ¿Cómo usar el titular de la vista si el contenido personalizado de la fila listview es dinámico?
  • Cómo insertar ListView en CardView con barra de desplazamiento fuera de CardView?
  • Desplazarse a Cadena específica en el elemento de vista de lista personalizada
  • Cómo puede el estilo el ListView de un ListFragment
  • Haga clic en un elemento ListView cambia el estado de los elementos dentro del elemento?
  • Widget de Android con ListView no carga elementos correclty
  • Android - Slide ListView con setX, setPadding o animación de interpolación?
  • Obtener id de recurso desde la vista que se infló
  • ListView no se desplaza hasta el final cuando el teclado
  • Evento onClick no funciona en el control anidado de elementos de lista en android
  • Android: muestra el contenido de la lista
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.