przesunięcie (swipe)
Przesuwanie w określonym kierunku w obszarze widoku lub elemencie dla aplikacji Desktop/Mobile Web ORAZ natywnych aplikacji mobilnych.
Przesuwanie dla natywnych aplikacji mobilnych opiera się na protokole W3C-actions, symulującym naciśnięcie palcem i ruch.
To różni się od komendy mobile: scrollGesture
dla Androida
lub mobile: scroll
dla iOS, które opierają się na protokole Appium Driver i są
dostępne tylko dla platform mobilnych w kontekście NATIVE.
Ta komenda działa tylko z następującymi aktualnymi komponentami:
- Serwer Appium (wersja 2.0.0 lub wyższa)
appium-uiautomator2-driver
(dla Androida)appium-xcuitest-driver
(dla iOS)
Upewnij się, że twoje lokalne lub oparte na chmurze środowisko Appium jest regularnie aktualizowane, aby uniknąć problemów z kompatybilnością.
Unikaj używania opcji from
i to
, chyba że jest to absolutnie konieczne. Są one specyficzne dla urządzenia i mogą nie działać spójnie na różnych urządzeniach.
Użyj opcji scrollableElement
dla niezawodnych przesunięć w obrębie elementu.
Parametry
Nazwa | Typ | Szczegóły |
---|---|---|
options opcjonalny | object, boolean | opcje dla browser.swipe() . Domyślnie dla desktop/mobile web: { direction: 'up', duration: 1500, percent: 0.95, scrollableElement: WebdriverIO.Element } |
options.direction opcjonalny | string | Może być jednym z: down , up , left lub right , domyślnie up . TYLKO-DLA-NATYWNYCH-APLIKACJI-MOBILNYCH |
W dół Punkt początkowy: Umieszczasz palec w górnej części ekranu. Ruch: Przesuwasz palec w dół w kierunku dolnej części ekranu. Akcja: To zależy od kontekstu: - Na ekranie głównym lub w aplikacjach, zazwyczaj przewija zawartość w górę. - Z górnej krawędzi, często otwiera panel powiadomień lub szybkie ustawienia. - W przeglądarkach lub aplikacjach do czytania, może służyć do przewijania treści. | ||
W lewo Punkt początkowy: Umieszczasz palec po prawej stronie ekranu. Ruch: Przesuwasz palec poziomo w lewo.> Akcja: Odpowiedź na ten gest zależy od aplikacji: - Może przejść do następnego elementu w karuzeli lub zestawie obrazów. - W kontekście nawigacji, może wrócić do poprzedniej strony lub zamknąć bieżący widok. - Na ekranie głównym, zwykle przełącza na następny wirtualny pulpit lub ekran. | ||
W prawo Punkt początkowy: Umieszczasz palec po lewej stronie ekranu. Ruch: Przesuwasz palec poziomo w prawo. Akcja: Podobnie jak przesunięcie w lewo, ale w przeciwnym kierunku: -- Często przechodzi do poprzedniego elementu w karuzeli lub galerii. - Może służyć do otwierania menu bocznych lub szuflad nawigacyjnych w aplikacjach. - Na ekranie głównym, zazwyczaj przełącza na poprzedni wirtualny pulpit. | ||
W górę Punkt początkowy: Umieszczasz palec w dolnej części ekranu. Ruch: Przesuwasz palec w górę w kierunku górnej części ekranu.> Akcja: W zależności od kontekstu, mogą wystąpić różne działania: - Na ekranie głównym lub na liście, zwykle przewija zawartość w dół. - W aplikacji pełnoekranowej, może otworzyć dodatkowe opcje lub szufladę aplikacji. - W niektórych interfejsach, może wywołać akcję 'odświeżania' lub otworzyć pasek wyszukiwania. | ||
options.duration opcjonalny | number | Czas trwania przesunięcia w milisekundach. Domyślnie 1500 ms. Im niższa wartość, tym szybsze przesunięcie. |
options.scrollableElement opcjonalny | Element | Element, który jest używany do przesuwania w jego obrębie. Jeśli nie podano żadnego elementu, zostanie użyty następujący selektor dla iOS -ios predicate string:type == "XCUIElementTypeApplication" i następujący dla Androida //android.widget.ScrollView' . Jeśli więcej elementów odpowiada domyślnemu selektorowi, wtedy domyślnie wybierze pierwszy pasujący element. TYLKO-DLA-NATYWNYCH-APLIKACJI-MOBILNYCH |
options.percent opcjonalny | number | Procent (domyślnego) przewijalnego elementu do przesunięcia. Jest to wartość między 0 a 1. Domyślnie 0.95 .NIGDY nie przesuwaj z dokładnej górnej|dolnej|lewej|prawej krawędzi ekranu, możesz uruchomić na przykład pasek powiadomień lub inne funkcje systemu operacyjnego/aplikacji, co może prowadzić do nieoczekiwanych wyników. Nie ma to wpływu, jeśli podano from i to . |
Poniższe wartości TYLKO mają wpływ, jeśli scrollableElement NIE jest podany, w przeciwnym razie są ignorowane. | ||
options.from opcjonalny | object | Współrzędne x i y początku przesunięcia. Jeśli podano scrollableElement , te współrzędne nie mają wpływu. |
options.from.x opcjonalny | number | Współrzędna x początku przesunięcia. |
options.from.y opcjonalny | number | Współrzędna y początku przesunięcia. |
options.to opcjonalny | object | Współrzędne x i y końca przesunięcia. Jeśli podano scrollableElement , te współrzędne nie mają wpływu. |
options.to.x opcjonalny | number | Współrzędna x końca przesunięcia. |
options.to.y opcjonalny | number | Współrzędna y końca przesunięcia. |
Przykłady
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
})
});