Я тестирую функцию перетаскивания в веб-приложении, используя Selenium, и использую сценарий java для выполнения функции перетаскивания.
У меня хорошее понимание функции но я не могу обернуть голову вокруг его полной работы
Я перебираю веб-элементы, используя метод Selenium findElement
WebElement From = driver.findElement(By.cssSelector("#todrag > span:nth-child(4)"));
WebElement To = driver.findElement(By.cssSelector("#mydropzone"));
, и ниже показано, где происходит действие
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("function createEvent(typeOfEvent) { var event = document.createEvent(\"CustomEvent\"); event.initCustomEvent(typeOfEvent, true, true, null); event.dataTransfer = { data: {}, setData: function (key, value) { this.data[key] = value; }, getData: function (key) { return this.data[key]; } }; return event; } function dispatchEvent(element, event, transferData) { if (transferData !== undefined) { event.dataTransfer = transferData; } if (element.dispatchEvent) { element.dispatchEvent(event); } else if (element.fireEvent) { element.fireEvent(\"on\" + event.type, event); } } function simulateHTML5DragAndDrop(element, target) { var dragStartEvent = createEvent('dragstart'); dispatchEvent(element, dragStartEvent); var dropEvent = createEvent('drop'); dispatchEvent(target, dropEvent, dragStartEvent.dataTransfer); var dragEndEvent = createEvent('dragend'); dispatchEvent(element, dragEndEvent, dropEvent.dataTransfer); } var elementToDrag = arguments[0]; var target = arguments[1]; simulateHTML5DragAndDrop(elementToDrag, target);",
From, To);
Этот код, кажется, прекрасно работает на "https://the-internet.herokuapp.com/drag_and_drop"
, но не работает на "https://www.seleniumeasy.com/test/drag-and-drop-demo.html"
Ниже приведена ошибка, которую я вижу на экране
![enter image description here](https://i.stack.imgur.com/NDttJ.png)
Было бы замечательно, если бы кто-нибудь помог мне разобраться и решить эту проблему
На этой ссылке можно найти JS сайта - https://easyupload.io/dgefbv