如何使用Selenium-Appium v​​1.7.2在iOS应用程序中滚动

时间:2018-03-28 18:20:09

标签: appium-ios

我使用了以下方法但它在Swipe()方法上显示错误。此方法在驱动程序类中不可用。所以,请建议我们是否可以在iOS Appium v1.7.2中滚动。

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);

2 个答案:

答案 0 :(得分:1)

对于最新版本的appium,您无法使用.swipe(),因为此方法已弃用。您必须使用TouchAction类在最新的appium中实现滚动功能。

请参阅Touch Actions上的以下链接:

Touch Actions in Appium

答案 1 :(得分:0)

您可以使用以下方法

/**
     * Swipe vertically upwards
     *
     * @author xxx
     * 
     * @param ele
     *            -reference field/area to swipe
     * 
     */
public void verticalSwipe_Up(MobileElement ele) {
    Dimension size = ele.getSize();
    ElementOption press = element(ele, size.width / 2, (int) (size.height * .80));
    ElementOption move = element(ele, size.width / 2, 25);
    TouchAction swipe = new TouchAction(getDriver()).press(press).waitAction(waitOptions(Duration.ofMillis(1000))).moveTo(move).release();
    // ofSeconds(2)
    swipe.perform();
}

您可以相应地更改值以执行向下滑动/向右/向左