Как выполнить метод смещения перетаскивания в Selenium WebDriver с использованием Java?
Selenium — это инструмент веб-автоматизации с открытым исходным кодом, который поддерживает множество действий пользователя, выполняемых в веб-браузере. Автоматизация современной веб-страницы с функцией перетаскивания и перетаскивания используется для загрузки файлов и множества действий пользователя. поэтому для выполнения действий перетаскивания селен предоставляет класс под названием Actions. Класс Action предоставляет метод для действий перетаскивания и многих других действий мыши и действий клавиатуры. Действия, предоставляемые этим классом, выполняются API, называемым расширенным взаимодействием с пользователем в веб-драйвере selenium.
Давайте обсудим выполнение перетаскивания с использованием класса Action в веб-драйвере selenium:
На некоторых веб-страницах нам нужно выполнить функцию перетаскивания. В этом случае нам нужно использовать метод, предоставляемый классом действий, для выполнения этого действия.
Существует два типа методов перетаскивания, предоставляемых классом Actions:
- перетащите, используя исходное и целевое местоположение.
- перетащите, используя источник и смещение.
1. перетащите, используя исходное и целевое местоположение
Actions action=new Actions(driver);
action.dragAndDrop(Source, Destination).perform();
2. перетащите, используя источник и смещение
Actions action=new Actions(driver);
action.dragAndDropBy(Source, xoffset, yoffset).perform();
Здесь этот метод получает три входных параметра: один для местоположения источника, а два других для смещений по осям x и y. Этот метод заключается в том, чтобы щелкнуть и удерживать веб-элемент в исходном местоположении, а затем отпустить кнопку мыши в указанном месте. Смещение по оси x — это горизонтальное перемещение, а смещение по оси y — вертикальное перемещение.
Пример программы:
В этом примере мы переходим к URL-адресу и выполняем действие перетаскивания, используя смещение на этой странице.
Java
public class Geeks { public void geekforgeeks() throws InterruptedException { ChromeDriver driver = new ChromeDriver(); driver.manage().window().maximize(); Thread.sleep( 3000 ); Actions action= new Actions(driver); WebElement drag = driver.findElement(By.id( "draggable" )); action.dragAndDropBy(drag, 150 , 50 ).build().perform(); Thread.sleep( 3000 ); driver.close(); } } |
В этой программе мы использовали смещение x и y как (150 и 50), а метод щелкает и удерживает перетаскиваемый элемент и освобождает его в указанном смещении на странице. Вывод этой программы,