Højreklik og Double Klik ind Selenium (Eksempler)
Højreklik ind Selenium
Højreklik handling ind Selenium webdriver kan udføres ved hjælp af Actions-klassen. Højreklik-handling kaldes også Context Click in Selenium. Foruddefineret metodekontekstklik leveret af Actions-klassen bruges til at udføre højreklikshandlinger. Nedenfor er koden til at demonstrere højreklik-operation ved hjælp af Actions-klassen.
Actions actions = new Actions(driver); WebElement elementLocator = driver.findElement(By.id("ID")); actions.contextClick(elementLocator).perform();
Sådan højreklikker du ind Selenium
Testscenarie:
- Start URL'en: https://demo.guru99.com/test/simple_context_menu.html
- Udfør højreklik på knappen : højreklik på mig
- Klik på linket Rediger på den viste liste over højrekliksmuligheder
- Klik på knappen OK på den viste advarsel
- Luk browseren
Kode:
package test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions; public class ContextClick { public static void main(String[] args) throws InterruptedException { WebDriver driver; System.setProperty("webdriver.chrome.driver","X://chromedriver.exe"); driver= new ChromeDriver(); //Launch the Application Under Test (AUT) driver.get("https://demo.guru99.com/test/simple_context_menu.html"); driver.manage().window().maximize(); // Right click the button to launch right click menu options Actions action = new Actions(driver); WebElement link = driver.findElement(By.cssSelector(".context-menu-one")); action.contextClick(link).perform(); // Click on Edit link on the displayed menu options WebElement element = driver.findElement(By.cssSelector(".context-menu-icon-copy")); element.click(); // Accept the alert displayed //driver.switchTo().alert().accept(); // Closing the driver instance //driver.quit(); } }
Resultat:
Double klik ind Selenium
Double klik handling ind Selenium webdriver kan udføres ved hjælp af Actions-klassen. Actions-klassen er en foruddefineret klasse i Selenium webdriver, der bruges til at udføre flere tastatur- og mushandlinger, såsom højreklik, træk og slip osv.
Double klik ind Selenium ved hjælp af Actions-klassen
Actions actions = new Actions(driver); WebElement elementLocator = driver.findElement(By.id("ID")); actions.doubleClick(elementLocator).perform();
- I første omgang skal vi instansiere et objekt af Actions-klassen ved at videregive driverforekomsten som en parameter
- Ved at bruge find element-kommandoen skal vi finde locatoren for et element, som vi vil dobbeltklikke på
- Ved at bruge den foruddefinerede dobbeltklikmetode i Actions-klassen skal vi udføre dobbeltklikoperation på webelementet
Hvordan man Double Klik ind Selenium
Testscenarie
- Start URL'en: https://demo.guru99.com/test/simple_context_menu.html
- Double klik på knappen mærket 'Double-Klik på mig for at se advarsel'
- Klik på knappen OK på den viste advarsel
Kode:
package test; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions; import org.openqa.selenium.Alert; public class DobuleClickDemo { public static void main(String[] args) throws InterruptedException { WebDriver driver; System.setProperty("webdriver.chrome.driver","X://chromedriver.exe"); driver= new ChromeDriver(); //Launch the Application Under Test (AUT) driver.get("https://demo.guru99.com/test/simple_context_menu.html"); driver.manage().window().maximize(); driver.get("https://demo.guru99.com/test/simple_context_menu.html"); driver.manage().window().maximize(); //Double click the button to launch an alertbox Actions action = new Actions(driver); WebElement link =driver.findElement(By.xpath("//button[text()='Double-Click Me To See Alert']")); action.doubleClick(link).perform(); //Switch to the alert box and click on OK button Alert alert = driver.switchTo().alert(); System.out.println("Alert Text\n" +alert.getText()); alert.accept(); //Closing the driver instance //driver.quit(); } }
Resultat:
Knappen mærket "Double-Click Me to See Alert” klikkes på, og pop-up vises
In Eclipse, ser du outputtet i konsollen
Resumé
- Actions klasse i Selenium bruges mest til at udføre komplekse tastatur- og musoperationer. Derfor foretrækkes Actions-klassen sammenlignet med Javascript til at udføre handlinger såsom højreklik og Double Klik ind Selenium.
- Højrekliksoperation bruges mest, når du udfører højreklik på et element og åbner en ny menu. Højreklik operation i Selenium webdriver kan gøres ved at bruge den foruddefinerede kommando Context Click som nævnt nedenfor
Actions action = new Actions(driver); WebElement link = driver.findElement(By.ID ("Element ID")); action.contextClick(link).perform();
- Double klikoperation bruges, når webelementets tilstand ændres efter dobbeltklikoperation. Double Klik operation ind Selenium webdriver kan udføres ved hjælp af den foruddefinerede kommando Double Klik som nævnt nedenfor
Actions action = new Actions(driver); WebElement link = driver.findElement(By.ID ("Element ID")); action. doubleClick (link).perform();