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();
}
}
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().