如何在特定框中向右(垂直)滑动,并使用 Appium 验证 Android 中的所有结果



场景是在框中从右向左滑动。 你会得到一些动态的结果。 并验证它们。

您可以识别 2 个元素的定位器 -

1 - 元素直到您想要到达的位置

2 - 该框中所有水平元素的通用 Xpath,然后运行以下代码以水平滚动。

public static void scrollTillElementHorizontally(By by, By allElements) {
    if (driver.findElements(By) > 0 || driver.findElement(By).isDisplayed())
        return;
    int y = driver.findElement(allElements).getCenter().y;
    int width = driver.manage().window().getSize().getWidth();
    double startX = width * 0.80;
    double endX = width * 0.20;
    TouchAction action = new TouchAction(driver);
    int i = 0;
    while (i < 50) {
        if (driver.findElements(By) > 0 || driver.findElement(By).isDisplayed())
            break;
        action.press(PointOption.point((int) startX, y)).waitAction(WaitOptions.waitOptions(Duration.ofSeconds(2)))
                .moveTo(PointOption.point((int) endX, y)).release().perform();
        i++;
    }
}

如果您想在滚动时删除重复的元素,请将元素添加到 HashSet 中,这将在滚动时删除重复项。

最新更新