尝试在Appium中连续多次点击相同的坐标似乎只注册了第一次点击

时间:2018-03-06 21:22:29

标签: appium

我试图点击相同的屏幕坐标N次,但只有第一次点击成功。所有其他水龙头似乎没有正确注册。这是为了在不滑动的情况下逐个更改“滚轮”上的值。

这是我正在尝试的一些示例代码。我已经尝试了很多东西,但都有相同的结果。

private void tapTouchWheelDown(AppiumDriver driver, org.openqa.selenium.Rectangle dimensions, int numberOfTaps) {
    int xCoordinate = dimensions.x + (int)(dimensions.width * 0.5);
    int yCoordinate = dimensions.y + (int)(dimensions.height * 0.8);
    PointOption pointOption = new PointOption().withCoordinates(xCoordinate,  yCoordinate);
    WaitOptions waitOptions = new WaitOptions().withDuration(Duration.ofMillis(1000));

    for (int i = 0; i < numberOfTaps; i++) {
        new TouchAction(driver)
            .tap(pointOption)
            .waitAction(waitOptions)
            .perform();
        System.out.println(i);
    }
}

我尝试过使用Thread.sleeps不同的时间(250ms到5000ms)。

我尝试过press()和release()而不是tap()。

我尝试在循环之前创建完整的TouchAction对象,然后在循环中运行perform()。

我已经尝试在每次循环中在TouchAction序列中创建PointOption和WaitOptions,以防有多个有趣的业务继续进行多次访问这些对象。

任何人都知道如何做到这一点?是否存在阻止此问题的错误?

由于

0 个答案:

没有答案