почему метод moveToElement не освобождает объект в месте падения в Selenium? - PullRequest
0 голосов
/ 01 октября 2019

Я пытаюсь перетащить объект, используя метод movetoelement, но я заметил, что объект не удаляется в месте назначения. Когда пользователь перемещает объект мыши, он падает.

''' 
WebElement el = driver.findElement(By.xpath("//*[contains(text(),'Project')]"));
Actions action=new Actions(driver);                 
action.clickAndHold(el).pause(5000).moveToElement(el, 800, -300).pause(5000).click().release().build().perform();
'''

Фактический результат: объект перетаскивается и перемещается в указанное место координат, но не освобождается, пока пользователь не перемещает мышь.

Селен: 3.141 хромедрайвер 76

Ответы [ 2 ]

1 голос
/ 01 октября 2019

Я бы попытался удалить .click(), который появляется до .release().

action.clickAndHold(el).pause(5000).moveToElement(el, 800, -300).pause(5000).release().build().perform();

Если это не сработает, вы можете попробовать сократить паузу:

action.clickAndHold(el).pause(1000).moveToElement(el, 800, -300).pause(5000).release().build().perform();

Решение будет включать в себя игру с различными Actions командами, пока мы не найдем что-то правильное.

0 голосов
/ 01 октября 2019

Попробуйте, это может работать

action.DragAndDropToOffset(el, 800, -300).Build().Perform();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...