Какая разница между Action и Actions?

  1. Action (интерфейс в Selenium):

    • Action - это интерфейс в Selenium, предназначенный для представления действия, которое может быть выполнено на веб-странице. Это может быть, например, клик мыши, ввод текста и т.д. Action предоставляет метод perform(), который выполняет это действие.

    Пример использования Action для клика мыши:

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.interactions.Action;
    import org.openqa.selenium.interactions.Actions;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class ActionExample {
        public static void main(String[] args) {
            WebDriver driver = new ChromeDriver();
            driver.get("https://www.example.com");
    
            WebElement element = driver.findElement(By.id("exampleId"));
    
            // Создание действия (клик мыши)
            Action clickAction = new Actions(driver).click(element).build();
    
            // Выполнение действия
            clickAction.perform();
    
            driver.quit();
        }
    }
  2. Actions (класс в Selenium):

    • Actions - это класс в Selenium, предназначенный для создания цепочек действий (комбинаций действий), которые могут быть выполнены на веб-странице. Actions позволяет создавать сложные действия, такие как перемещение мыши, комбинированные клики и т.д.

    Пример использования Actions для комбинированного клика:

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.WebElement;
    import org.openqa.selenium.interactions.Actions;
    import org.openqa.selenium.chrome.ChromeDriver;
    
    public class ActionsExample {
        public static void main(String[] args) {
            WebDriver driver = new ChromeDriver();
            driver.get("https://www.example.com");
    
            WebElement element = driver.findElement(By.id("exampleId"));
    
            // Создание цепочки действий (комбинированный клик)
            Actions actions = new Actions(driver);
            actions.moveToElement(element).click().build().perform();
    
            driver.quit();
        }
    }

Итак, основное различие заключается в том, что Action - это интерфейс для представления одиночного действия, в то время как Actions - это класс для создания цепочек действий (комбинаций), которые затем выполняются с использованием метода perform().

Last updated