swipe
Desliza en una dirección específica dentro del viewport o elemento para aplicaciones web de escritorio/móvil Y aplicaciones nativas móviles.
El deslizamiento para aplicaciones nativas móviles se basa en el protocolo W3C-actions, simulando la presión y el movimiento de un dedo.
Esto es diferente del comando mobile: scrollGesture para Android
o mobile: scroll para iOS, que se basa en el protocolo del controlador Appium y está
disponible solo para plataformas móviles en el contexto NATIVE.
Este comando solo funciona con los siguientes componentes actualizados:
- Servidor Appium (versión 2.0.0 o superior)
appium-uiautomator2-driver(para Android)appium-xcuitest-driver(para iOS)
Asegúrate de que tu entorno Appium local o en la nube se actualice regularmente para evitar problemas de compatibilidad.
Evita usar las opciones from y to a menos que sea absolutamente necesario. Estas son específicas del dispositivo y pueden no funcionar de manera consistente en todos los dispositivos.
Usa la opción scrollableElement para deslizamientos confiables dentro de un elemento.
Parámetros
| Nombre | Tipo | Detalles |
|---|---|---|
optionsopcional | object, boolean | opciones para browser.swipe(). Por defecto para web de escritorio/móvil: { direction: 'up', duration: 1500, percent: 0.95, scrollableElement: WebdriverIO.Element } |
options.directionopcional | string | Puede ser uno de down, up, left o right, por defecto es up. SOLO PARA APLICACIONES NATIVAS MÓVILES |
| Down Punto de inicio: Colocas tu dedo hacia la parte superior de la pantalla. Movimiento: Deslizas tu dedo hacia abajo hacia la parte inferior de la pantalla. Acción: Esto también varía según el contexto: - En la pantalla de inicio o en aplicaciones, normalmente desplaza el contenido hacia arriba. - Desde el borde superior, a menudo abre el panel de notificaciones o configuraciones rápidas. - En navegadores o aplicaciones de lectura, se puede usar para desplazarse por el contenido. | ||
| Left Punto de inicio: Colocas tu dedo en el lado derecho de la pantalla. Movimiento: Deslizas tu dedo horizontalmente hacia la izquierda.> Acción: La respuesta a este gesto depende de la aplicación: - Puede moverse al siguiente elemento en un carrusel o un conjunto de imágenes. - En un contexto de navegación, podría volver a la página anterior o cerrar la vista actual. - En la pantalla de inicio, generalmente cambia al siguiente escritorio o pantalla virtual. | ||
| Right Punto de inicio: Colocas tu dedo en el lado izquierdo de la pantalla. Movimiento: Deslizas tu dedo horizontalmente hacia la derecha. Acción: Similar a deslizar hacia la izquierda, pero en la dirección opuesta: -- A menudo se mueve al elemento anterior en un carrusel o galería. - Se puede usar para abrir menús laterales o cajones de navegación en aplicaciones. - En la pantalla de inicio, normalmente cambia al escritorio virtual anterior. | ||
| Up Punto de inicio: Colocas tu dedo hacia la parte inferior de la pantalla. Movimiento: Deslizas tu dedo hacia arriba hacia la parte superior de la pantalla.> Acción: Dependiendo del contexto, pueden ocurrir diferentes acciones: - En la pantalla de inicio o en una lista, esto generalmente desplaza el contenido hacia abajo. - En una aplicación de pantalla completa, podría abrir opciones adicionales o el cajón de aplicaciones. - En ciertas interfaces, podría activar una acción de 'actualización' o abrir una barra de búsqueda. | ||
options.durationopcional | number | La duración en milisegundos para el deslizamiento. Por defecto es 1500 ms. Cuanto menor sea el valor, más rápido será el deslizamiento. |
options.scrollableElementopcional | Element | Elemento que se utiliza para deslizar dentro. Si no se proporciona ningún elemento, utilizará el siguiente selector para iOS -ios predicate string:type == "XCUIElementTypeApplication" y el siguiente para Android //android.widget.ScrollView'. Si más elementos coinciden con el selector predeterminado, entonces por defecto seleccionará el primer elemento coincidente. SOLO PARA APLICACIONES NATIVAS MÓVILES |
options.percentopcional | number | El porcentaje del elemento desplazable (por defecto) para deslizar. Este es un valor entre 0 y 1. Por defecto es 0.95.NUNCA deslices desde el extremo superior|inferior|izquierdo|derecho de la pantalla, podrías activar por ejemplo la barra de notificaciones u otras características del SO/App que pueden llevar a resultados inesperados. Esto no tiene efecto si se proporcionan from y to. |
Los valores a continuación SOLO tienen efecto si el scrollableElement NO se proporciona, de lo contrario se ignoran. | ||
options.fromopcional | object | Las coordenadas x e y del inicio del deslizamiento. Si se proporciona un scrollableElement, entonces estas coordenadas no tienen efecto. |
options.from.xopcional | number | La coordenada x del inicio del deslizamiento. |
options.from.yopcional | number | La coordenada y del inicio del deslizamiento. |
options.toopcional | object | Las coordenadas x e y del final del deslizamiento. Si se proporciona un scrollableElement, entonces estas coordenadas no tienen efecto. |
options.to.xopcional | number | La coordenada x del final del deslizamiento. |
options.to.yopcional | number | La coordenada y del final del deslizamiento. |
Ejemplos
it('should execute a default swipe', async () => {
// Default will be a swipe from the bottom to the top, meaning it will swipe UP
await browser.swipe();
});
it('should execute a swipe with options', async () => {
await browser.swipe({
direction: 'left', // Swipe from right to left
duration: 5000, // Last for 5 seconds
percent: 0.5, // Swipe 50% of the scrollableElement
scrollableElement: $('~carousel'), // The element to swipe within
})
});