Да, мне бы желательно живой пример. Друг помог с сами drag and drop, перетаскивание элементов используя локаторы делается легко. Но пример с перетаскиванием элементов в определенные координаты я так и не нашел. Как их указывать?
IWebElement element = driver.FindElement(By.Id("content_hiddena909e79d-923d-4b7d-8bff-c5e88009f10d")); IWebElement target = driver.FindElement(By.Id("content_hidden4ff1b05b-3dd1-4c24-af46-772bca096eb2")); (new Actions(driver)).DragAndDrop(element, target).Perform();
Но вот как бы сюда прикрутить не поиск элементов By Id, а поиск элемента бай координаты X и Y ?
IWebElement element = driver.FindElement(By.Id("content_hiddena909e79d-923d-4b7d-8bff-c5e88009f10d")); IWebElement target = driver.FindElement(By.Id("content_hidden4ff1b05b-3dd1-4c24-af46-772bca096eb2")); (new Actions(driver)).DragAndDrop(element, target).Perform();
2) Перемещение по координатам :
Actions builder = new Actions(driver); // Перемещаем объект на (x,y) относительно текущего положения builder.ClickAndHold(driver.FindElement(By.Id("content_hiddena909e79d-923d-4b7d-8bff-c5e88009f10d"))).MoveByOffset(-100, -100); builder.Release(); Thread.Sleep(100); // обязательно должна быть пауза, иначе перемещение не сработает. builder.Perform();
3) клик по координатам:
IJavaScriptExecutor jscript = driver as IJavaScriptExecutor; jscript.ExecuteScript(@" function simulateClick(x, y) { jQuery(document.elementFromPoint(x, y)).click(); } simulateClick(800, 800); ");
А можно пример на python как можно, скажем, кликнуть на странице по координате (100, 100) и перетащить курсор, удерживая нажатой кнопку мыши, на координату (200, 100)? Спасибо