Приветствую.
У меня в GUI есть возможность перетащить элемент мышкой. Пробую 2 варианта, но ни один не работает. Элемент захватывается, но не передвигается. Подскажите, пожалуйста, что-то не так делаю или другой способ. Переменной height пробовал присваивать разные значения.
Ошибок при этом нет. Тест висит до тех пор, пока я не переведу курсор в браузер запущенный селениумом. После этого элемент отпускается и продолжает выполнение следующая инструкция.
def hold_and_move_section_to_down(self, element):
height = element.size['height']
ActionChains(self.driver).click_and_hold(element).move_by_offset(0, height).release(element).perform()
'''
# или так
ActionChains(self.driver).drag_and_drop_by_offset(element, 0, height).perform()
'''
Столкнулся с похожей проблемой пару недель назад, методы завязанные на click_and_hold отрабатывают криво в сочетании с move_by_offset, либо не отрабатывают совсем. Вы сказали, что попробовали оба метода т.е. обертку и реализацию той же логики в лоб, но все еще завязаны на координатах, если заглянуть в методы drag_and_drop и drag_and_drop_by_offset библиотеки ActionChains, то сразу заметна разница, в Вашем примере используется как move_by_offset так и release(element), только вот для решения нужно либо-либо, либо вы используете click_and_hold + release(element) и тогда перемещение элемента произойдет автоматически через release, либо click_and_hold + move_by_offset + release() - что лично у меня не работает, судя по всему у вас тоже, а значит существует какая-то проблема с вызовом метода Command.MOVE_TO, с координатами он не корректно отрабатывает
П.С. если у кого кто-то есть желание накатайте в гите ишьюс
Привет, как получилось решить проблему? Я с ней сталкивался больше года назад и тогда помог js скрипт указанный в теме выше. Но сейчас этот скрипт перестал работать. Все варианты уже перепробовал.