Веб-драйвер Selenium (java): проблема с перетаскиванием

Приложение: Adobe CQ5 — Авторский экземпляр

Задача: перетащите изображение из Content-Dam и поместите его в диалоговое окно изображения CQ5.

Используемый язык: Java + Selenium WebDriver 2.40

Я пытаюсь выполнить операцию перетаскивания для достижения вышеуказанной задачи. Проблема здесь в том, что источник и место назначения находятся на двух разных панелях (исходное изображение в дамбе содержимого, а место назначения - диалоговое окно html).

Столкнулся с проблемой:

  1. Нажатие и удерживание изображения - работает нормально
  2. Двигаемся к месту назначения - Работает нормально
  3. Освобождение образа в месте назначения - НЕУДАЧА

введите здесь описание изображения‹>

Целевой элемент отображается и доступен (при проверке из отладчика) Я пытался переключиться на активный элемент/содержимое по умолчанию Целевой элемент не находится ни в одном фрейме/iframe

Это сработало несколько дней назад (более старая версия Selenium 2.36). Но теперь он не работает с последней версией (и со старой версией)

Я что-то пропустил здесь.? Я не смог понять, почему веб-драйвер не выпускает изображение из-под контроля в пункте назначения.

Заранее спасибо.


person Praveen    schedule 02.06.2014    source источник
comment
Вы получаете какие-либо исключения? Он просто молча терпит неудачу? Пожалуйста, покажите, как вы пытаетесь взаимодействовать с элементами, даже если это просто.   -  person toniedzwiedz    schedule 03.06.2014
comment
Привет, Том. Нет ни ошибки, ни сбоя. Он просто удерживает изображение и никогда не выпускает его в месте назначения.   -  person Praveen    schedule 03.06.2014
comment
Я могу показать код через пару часов. Он у меня на рабочей машине. Я могу добавить фрагмент завтра рано утром. Извините и спасибо за ваш интерес.   -  person Praveen    schedule 03.06.2014
comment
Привет, Том. Пожалуйста, посмотрите прикрепленный снимок экрана с кодом и приложением, показывающим источник и место назначения. Строка, в которую добавлена ​​точка останова, — это код для выпуска образа, который не работает должным образом.   -  person Praveen    schedule 04.06.2014


Ответы (1)


У меня тоже раньше была эта проблема. Я использую версию 2.42.2. Что я сделал, так это переключился на Iframe перед его выпуском. это фрагмент

WebElement sourceElement = mySourceElement;
Actions builder = new Actions(driver);
Action dragAndDrop = builder.clickAndHold(sourceElement).build();
dragAndDrop.perform();
driver.switchTo().frame(iFrame);
WebElement targetElement = myTargetElement;
Thread.sleep(1000);
dragAndDrop = builder.moveToElement(targetElement).release().build();
   dragAndDrop.perform();
person andyssundaypink    schedule 23.07.2014
comment
Спасибо за вклад, приятель. Позвольте мне попробовать это. (на самом деле, это тот же подход, который я пробовал, но не сработал. Позвольте мне попробовать еще раз. Еще раз спасибо. - person Praveen; 24.07.2014
comment
Привет, в каком браузере ты пробовал этот код? Я пробовал это в FF, но потом попробовал в Chrome, но это не сработало. Ошибка в самом драйвере хрома. - person andyssundaypink; 12.09.2014
comment
Да, вы правы. В драйвере Chrome есть несколько ошибок. Заметил еще несколько таких проблем ТОЛЬКО с хромом. - person Praveen; 14.09.2014