Дважды щелкните в Selenium
Действие двойного щелчка в веб-драйвере Selenium можно выполнить с помощью класса Actions. Класс Actions - это предопределенный класс в веб-драйвере Selenium, используемый для выполнения нескольких операций с клавиатурой и мышью, таких как щелчок правой кнопкой мыши, перетаскивание и т. Д.
Дважды щелкните в Selenium с помощью класса Actions
Действия actions = новые действия (драйвер);WebElement elementLocator = driver.findElement (By.id ("ID"));actions.doubleClick (elementLocator) .perform ();
- Первоначально нам нужно создать экземпляр объекта класса Actions, передав экземпляр драйвера в качестве параметра.
- Используя команду find element, нам нужно найти локатор элемента, который мы хотим дважды щелкнуть
- Используя предопределенный метод двойного щелчка класса Actions, нам нужно выполнить операцию двойного щелчка на веб-элементе.
Щелкните правой кнопкой мыши в Selenium
Действие щелчка правой кнопкой мыши в веб-драйвере Selenium можно выполнить с помощью класса Actions. Операция щелчка правой кнопкой мыши также называется контекстным щелчком в Selenium. Щелчок по контексту предопределенного метода, предоставляемый классом Actions, используется для выполнения операции щелчка правой кнопкой мыши. Ниже приведен код, демонстрирующий операцию щелчка правой кнопкой мыши с использованием класса Actions.
Действия actions = новые действия (драйвер);WebElement elementLocator = driver.findElement (By.id ("ID"));actions.contextClick (elementLocator) .perform ();
Пример двойного щелчка
Сценарий тестирования
- Запустите URL: http://demo.guru99.com/test/simple_context_menu.html
- Дважды щелкните кнопку с надписью «Дважды щелкните меня, чтобы увидеть предупреждение».
- Нажмите кнопку ОК в отображаемом предупреждении.
Код:
пакетный тест;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;импортировать org.openqa.selenium.interactions.Actions;import org.openqa.selenium.Alert;public class DobuleClickDemo {public static void main (String [] args) выбрасывает InterruptedException {Драйвер WebDriver;System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");драйвер = новый ChromeDriver ();// Запускаем тестируемое приложение (AUT)driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();// Дважды щелкните кнопку, чтобы запустить окно предупрежденияДействия действие = новые Действия (драйвер);WebElement link = driver.findElement (By.xpath ("// button [text () = 'Дважды щелкните меня, чтобы увидеть предупреждение']"));action.doubleClick (ссылка) .perform ();// Переходим в окно предупреждения и нажимаем кнопку ОКОповещение alert = driver.switchTo (). Alert ();System.out.println ("Текст предупреждения \ n" + alert.getText ());alert.accept ();// Закрытие экземпляра драйвера//driver.quit ();}}
Результат:
Нажата кнопка с надписью "Дважды щелкните меня, чтобы увидеть предупреждение", и появится всплывающее окно.
В Eclipse вы видите вывод в консоли
Пример щелчка правой кнопкой мыши
Сценарий тестирования:
- Запустите URL: http://demo.guru99.com/test/simple_context_menu.html
- Выполните операцию правой кнопкой мыши на кнопке: щелкните меня правой кнопкой мыши
- Щелкните ссылку "Изменить" в отображаемом списке параметров, доступных для щелчка правой кнопкой мыши.
- Нажмите кнопку ОК в отображаемом предупреждении.
- Закройте браузер
Код:
пакетный тест;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;импортировать org.openqa.selenium.interactions.Actions;public class ContextClick {public static void main (String [] args) выбрасывает InterruptedException {Драйвер WebDriver;System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");драйвер = новый ChromeDriver ();// Запускаем тестируемое приложение (AUT)driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximize ();// Щелкните правой кнопкой мыши по кнопке, чтобы запустить опции меню, вызываемые правой кнопкойДействия действие = новые Действия (драйвер);Ссылка WebElement = driver.findElement (By.cssSelector (". Context-menu-one"));action.contextClick (ссылка) .perform ();// Щелкните ссылку «Изменить» в отображаемых параметрах менюWebElement element = driver.findElement (By.cssSelector (". Значок-контекстного меню-копия"));element.click ();// Принимаем отображаемое предупреждение//driver.switchTo (). alert (). accept ();// Закрытие экземпляра драйвера//driver.quit ();}}
Результат:
Резюме:
- Класс Actions в Selenium в основном используется для выполнения сложных операций с клавиатурой и мышью. Следовательно, класс Actions предпочтительнее по сравнению с Javascript для выполнения таких операций, как щелчок правой кнопкой мыши и двойной щелчок в Selenium.
- Операция щелчка правой кнопкой мыши в основном используется, когда щелчок правой кнопкой мыши по элементу открывает новое меню. Операция щелчка правой кнопкой мыши в веб-драйвере Selenium может быть выполнена с помощью предварительно определенной команды Context Click, как указано ниже.
Действия действие = новые Действия (драйвер);WebElement link = driver.findElement (By.ID («Идентификатор элемента»));action.contextClick (ссылка) .perform ();
- Операция двойного щелчка используется, когда состояние веб-элемента изменяется после операции двойного щелчка. Операцию двойного щелчка в веб-драйвере Selenium можно выполнить с помощью предопределенной команды Двойной щелчок, как указано ниже.
Действия действие = новые Действия (драйвер);WebElement link = driver.findElement (By.ID («Идентификатор элемента»));действие. doubleClick (ссылка) .perform ();