Мне нужно проверить перетаскивание, написанное в реакции 16.7.0.Я попытался использовать селен, а также кукловода.
Код кукловода выглядит следующим образом:
const temp_source = await iframe.$x("//div[@class='profile-item profile-item--draggable']//span[text()='pfsense_dut']")
const source = temp_source[0];
const temp_destination = await iframe.$x("//div[@class='component-network-diagram__diagram-layer']");
const destination = temp_destination[0];
const box_source = await source.boundingBox();
const box_destination = await destination.boundingBox();
await page.mouse.move(box_source.x + box_source.width / 2, box_source.y + box_source.height / 2);
await page.mouse.down();
await page.mouse.move(box_destination.x + box_destination.width / 2, box_destination.y + box_destination.height / 2, {steps:50});
await page.mouse.up();
Я вижу, что целевой элемент нажимается и перетаскивается над холстом (зона сброса), но ничегопроисходит при падении элемента.Также не выдается никаких ошибок или исключений.
Код для python с селеном:
def dragAndDrop(self):
try:
ActionChains(self.driver).drag_and_drop(div_source,canvas_destination).perform()
return True
except Exception as e:
print (e)
return False
При использовании python с селеном ничего не происходит: я даже не вижу выбранного целевого элемента.Используя python с селеном, я получаю исключение:
exception: 'str' object has no attribute 'id'
Я даже пытался использовать рекомендации из этого SO потока.Поведение такое же, как и у кукловода.
В чем может быть проблема с перетаскиванием?