Как выполнить перетаскивание с помощью веб-драйвера selenium -, когда целевой и целевой элементы находятся в разных кадрах?

Мне нужно перетащить изображение и поместить его в компонент CQ5. Изображение и компонент находятся в разных кадрах.

Вот код, который не работал, так как веб-элемент destinationне мог быть найден, когда целевой фрейм был активен.

new Actions(driver).dragAndDrop(target, destination).perform();

Я также пытался переключать кадры между действиями, как:

    Actions builder = new Actions(driver);
    Actions action = builder.clickAndHold(target);
    driver.switchTo().frame("newFrame"); //switching frames
    builder.moveToElement(destination);
    builder.release(destination);
    builder.build();
    action.perform();

Это тоже не сработало. Затем я попытался переместить изображение по смещению

new Actions(driver).dragAndDropBy(target,  x, y).perform(); // x and y 

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

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

12
задан Mohsin Awan 11 December 2016 в 13:11
поделиться