как провести пальцем вправо или влево с селеном? - PullRequest
0 голосов
/ 19 сентября 2019

Я пытаюсь провести пальцем вправо или влево, но нет кнопки или элемента, чтобы щелкнуть по нему, чтобы провести.Единственный вариант, который у меня есть, - это провести пальцем влево или вправо, удерживая мышь и перейти к каждой стороне, чтобы провести.Я попробовал этот метод, но он не работает для меня:

        Actions action = new Actions(driver);
        action.clickAndHold(homePage.HeroImage).build().perform();
        //you need to release the control from the test
        Thread.sleep(2000);
        action.moveToElement(homePage.HeroNext).release();

Спасибо за вашу помощь :) (HeroImage - это изображение, которое отображается сейчас, а HeroNext - это следующее изображение, котороеЯ хочу прокрутить в, и оба видны)

Я также пробовал этот код, но он также не работает.

        try {

            for (int kk=0; kk<=6; kk++){
                JavascriptExecutor js = (JavascriptExecutor) driver;
                HashMap<String, String> scrollObject = new HashMap<String, String>();
                scrollObject.put("direction", "right");
                js.executeScript("mobile: scroll", scrollObject);
            }
            System.out.println("Swipe Successfully");
        }
        catch (Exception e)
        {
            System.out.println("Image swipe was not successfull");
        }

Ответы [ 2 ]

1 голос
/ 19 сентября 2019

Вы пытались выполнить свою сборку и выполнить в конце?

    Actions action = new Actions(driver);
    action.clickAndHold(homePage.HeroImage);
    //you need to release the control from the test
    Thread.sleep(2000);
    action.moveToElement(homePage.HeroNext).release();
    action.build().perform();

Я не верю, что сон будет частью действия, как вы намереваетесь.Возможно, разделите на 2 действия, если необходимо тяжелое ожидание.Вы также можете использовать dragAndDrop или dragAndDropBy.Один перетаскивает к целевому элементу другой к месту назначения

0 голосов
/ 19 сентября 2019

Используйте Drag and Drop с координатами x и y:

Actions action = new Actions(driver);
        action.dragAndDropBy(homePage.HeroImage, 200, 0).build().perform();

Здесь драйвер будет выполнять перетаскивание элемента HeroImage по горизонтали.Если вы хотите перетащить вертикально установить x=0 и y="some range".

Надеюсь, что это работает.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...