Как перетащить элемент с помощью Selenium WebDriver в Java?

Опубликовано: 22 Февраля, 2023

Selenium — это инструмент веб-автоматизации с открытым исходным кодом, который поддерживает множество действий пользователя, выполняемых в веб-браузере. Автоматизация современной веб-страницы с функцией перетаскивания и перетаскивания используется для загрузки файлов и множества действий пользователя. поэтому для выполнения действий перетаскивания селен предоставляет класс под названием Actions. Класс Action предоставляет метод для действий перетаскивания и многих других действий мыши и действий клавиатуры. Действия, предоставляемые этим классом, выполняются API, называемым расширенным взаимодействием с пользователем в веб-драйвере selenium.

Давайте обсудим перемещение указателя курсора с помощью класса Action в веб-драйвере selenium:

На некоторых веб-страницах нам нужно выполнить функцию перетаскивания, в этом случае нам нужно использовать метод, предоставляемый классом действий, для выполнения этого действия. Чтобы работать с классом Actions, во-первых, нам нужно объявить класс action'ов и импортировать его « import org.openqa.selenium.interactions.Actions; “.

Actions action=new Actions(driver);

Для выполнения перетаскивания класс Actions предоставляет метод

action.dragAndDrop(Source, Destination);

Этот метод принимает два входных параметра: первый параметр указывает исходное местоположение, а второй — целевое местоположение.

Пример программы:

В этом примере мы переходим к URL-адресу и выполняем действие перетаскивания на этой странице.

Java




public class Geeks {
    
    public void geekforgeeks() {
  
        ChromeDriver driver = new ChromeDriver();
        driver.manage().window().maximize();
          
        // Navigate to URL
        Thread.sleep(3000);
        
        Actions action=new Actions(driver);
        WebElement drag = driver.findElement(By.id("draggable")); 
        WebElement drop = driver.findElement(By.id("droppable"));
        
        action.dragAndDrop(drag, drop).build().perform();
        
        Thread.sleep(3000);
        driver.close();    
          
    }
}

В этой программе мы сохранили веб-элемент из доступного для перетаскивания местоположения в режиме перетаскивания и выполнили действие перетаскивания с помощью класса Actions. Это вывод программы.

Выход: