Cómo ejecutar swipe con appium en Java para la aplicación nativa de Android

Tengo que deslizar mi aplicación (tanto de izquierda a derecha y de derecha a izquierda), wherelse estoy usando Java en appium para la automatización de aplicaciones nativas android.

He intentado este acoplamiento, el método del golpe no que trabaja en la prueba de la automatización del androide

Pero no puedo, es cualquier otro enlace por favor comparta o alguien me ayude.

5 Solutions collect form web for “Cómo ejecutar swipe con appium en Java para la aplicación nativa de Android”

Así es como lo hacemos:

Deslizar a la izquierda-

appiumDriver.context("NATIVE_APP"); Dimension size = appiumDriver.manage().window().getSize(); int startx = (int) (size.width * 0.8); int endx = (int) (size.width * 0.20); int starty = size.height / 2; appiumDriver.swipe(startx, starty, endx, starty, 1000); 

Desliza a la derecha-

 appiumDriver.context("NATIVE_APP"); Dimension size = appiumDriver.manage().window().getSize(); int endx = (int) (size.width * 0.8); int startx = (int) (size.width * 0.20); int starty = size.height / 2; appiumDriver.swipe(startx, starty, endx, starty, 1000); 

Aquí appiumDriver es una instancia de io.appium.java_client.AppiumDriver

Utilice este código a continuación para deslizar con appium en Junit para la aplicación nativa de Android,

  public void swipe() { JavascriptExecutor js = (JavascriptExecutor) driver; HashMap<String, Double> swipeObject = new HashMap<String, Double>(); swipeObject.put("startX", 0.95); swipeObject.put("startY", 0.5); swipeObject.put("endX", 0.05); swipeObject.put("endY", 0.5); swipeObject.put("duration", 1.8); js.executeScript("mobile: swipe", swipeObject); } 

// Llama a este método donde necesitas pasar,

  swipe(); //it will call the swipe method 

He intentado esto hacia fuera y consiguió golpeado con éxito en androide aplicación nativa.

Para más información esto podría ser útil:

https://github.com/appium/appium/blob/master/docs/en/gestures.md

 public void swipeUpElement(AppiumDriver<WebElement> driver, WebElement element, int duration){ int bottomY = element.getLocation().getY()-200; driver.swipe(element.getLocation().getX(), element.getLocation().getY(), element.getLocation().getX(), bottomY, duration); } 
 public void swipingHorizontally() throws MalformedURLException, InterruptedException{ DesiredCapabilities(); Dimension size = driver.manage().window().getSize(); System.out.println(size); int startx = (int) (size.width * 0.70); int endx = (int) (size.width * 0.30); int starty = size.height / 2; driver.swipe(startx, starty, endx, starty, 2000); // it swipes from right to left driver.swipe(endx, starty, startx, starty, 2000); // it swiptes from left to right } Thread.sleep(2000); } 

@ ABDUL SATHAR BEIGH: Absolutamente correcto. Sólo para añadir, para mí para trabajar en Android tuve que tipificar por el controlador (AndroidDriver) si lo anterior no funciona para usted. El siguiente trabajo con esta modificación. Esto es golpear a la derecha.

 ((AndroidDriver) driver).context("NATIVE_APP"); Dimension size = driver.manage().window().getSize(); int endx = (int) (size.width * 0.8); int startx = (int) (size.width * 0.20); int starty = size.height / 2; ((AndroidDriver) driver).swipe(startx, starty, endx, starty, 1000); 
  • Espresso - compruebe si TextView existe en ListView
  • Prueba del código de Android con JUnit y el JDK
  • Error: Error de ejecución para la tarea ': app: transformClassesWithMultidexlistForDebugAndroidTest'
  • Prueba JUnit con Robolectric: java.lang.InstantiationException
  • Espresso + Junit4 - iniciar sesión una vez antes de ejecutar todas las pruebas
  • Android: Unidad de prueba de un servicio
  • Junit testing con gradle para un proyecto android
  • AndroidJunit4.class runner en Android Studio no invoca métodos @Test
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.