t.me/atinfo_chat Telegram группа по автоматизации тестирования

Selenium WebDriver + Java. Кликнуть мышью по координате и удерживая провести в сторону(на другую координату) и отпустить.

Теги: #<Tag:0x00007f9b03412850> #<Tag:0x00007f9b03412670> #<Tag:0x00007f9b03412440>

Всем привет! Собственно задача описана в заголовке - внутри дива нужно взять некоторые координаты (могут быть заданы) кликнуть по ним и удерживая клик переместить на другие координаты, отпустить клик. Пытаюсь реализовать через actions, но что-то не хватает воображения. Наведите на путь истинный please :slight_smile:

А что вы уже сделали можно посмотреть?

Как то так на жс. Лень вспоминать как там на джаве - но аналогично
browser.actions().mouseDown({x: 1, y: 2}).mouseMove({x: 10, y: 10}).mouseUp().perform()

2 Симпатий

Actions action = new Actions(driver);
WebElement docDiv = driver.findElement(By.id(id));
action.clickAndHold(docDiv).build().perform();
action.moveToElement(docDiv, 100, 100).build().perform();
action.release().build().perform();

Вот так примерно было, но почему-то мне не приходило в голову что перед perform() нужно еще и buil(). В итоге так работает :slight_smile:

не нужно

ооооо, тем лучше)

Вопрос:
Координаты - это обязательное условие или можно привести к использованию WebElement?

С WebElement неплохо работает new Actions(driver).dragAndDrop(WebElement source, WebElement target)