Dubbelklik in Selenium
Dubbelklikactie in Selenium-webstuurprogramma kan worden gedaan met de klasse Actions. Actions-klasse is een vooraf gedefinieerde klasse in de Selenium-webdriver die wordt gebruikt om meerdere toetsenbord- en muisbewerkingen uit te voeren, zoals rechtsklikken, slepen en neerzetten, enz.
Dubbelklik in Selenium met de klasse Actions
Acties acties = nieuwe acties (bestuurder);WebElement elementLocator = driver.findElement (By.id ("ID"));actions.doubleClick (elementLocator) .perform ();
- In eerste instantie moeten we een object van de Actions-klasse instantiëren door de driverinstantie als een parameter door te geven
- Met het commando vind element moeten we de locator vinden van een element waarop we willen dubbelklikken
- Met behulp van de vooraf gedefinieerde dubbelklikmethode van de Actions-klasse, moeten we een dubbelklikbewerking uitvoeren op het webelement
Klik met de rechtermuisknop in Selenium
Rechtsklikactie in Selenium-webstuurprogramma kan worden gedaan met behulp van de Action-klasse. Rechts klikken wordt in Selenium ook wel Context Click genoemd. Vooraf gedefinieerde methode-context-klik geleverd door Actions-klasse wordt gebruikt om met de rechtermuisknop te klikken. Hieronder staat de code om de rechtsklikbewerking te demonstreren met behulp van de Action-klasse.
Acties acties = nieuwe acties (bestuurder);WebElement elementLocator = driver.findElement (By.id ("ID"));actions.contextClick (elementLocator) .perform ();
Voorbeeld van dubbelklikken
Testscenario
- Start de URL: http://demo.guru99.com/test/simple_context_menu.html
- Dubbelklik op de knop met het label 'Dubbelklik op mij om waarschuwing te zien'
- Klik op de OK-knop op de weergegeven waarschuwing
Code:
pakkettest;import org.openqa.selenium.By;importeer org.openqa.selenium.WebDriver;importeer org.openqa.selenium.WebElement;importeer org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.interactions.Actions;importeer org.openqa.selenium.Alert;openbare klas DobuleClickDemo {public static void main (String [] args) gooit InterruptedException {WebDriver-stuurprogramma;System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");driver = nieuwe ChromeDriver ();// Start de te testen applicatie (AUT)driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximaliseren ();driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximaliseren ();// Dubbelklik op de knop om een alertbox te openenActies actie = nieuwe acties (bestuurder);WebElement link = driver.findElement (By.xpath ("// button [text () = 'Dubbelklik op mij om waarschuwing te zien']"));action.doubleClick (link) .perform ();// Schakel over naar het waarschuwingsvenster en klik op de knop OKAlert alert = driver.switchTo (). Alert ();System.out.println ("Alert Text \ n" + alert.getText ());alert.accept ();// De driverinstantie sluiten//driver.quit ();
Resultaat:
Er wordt op de knop met het label "Dubbelklik op mij om waarschuwing te zien" geklikt en er wordt een pop-up weergegeven
In Eclipse zie je de uitvoer in de console
Voorbeeld van rechtsklikken
Testscenario:
- Start de URL: http://demo.guru99.com/test/simple_context_menu.html
- Voer een rechtsklikbewerking uit op de knop: klik met de rechtermuisknop op mij
- Klik op de link Bewerken in de weergegeven lijst met opties voor rechtsklikken
- Klik op de OK-knop op de weergegeven waarschuwing
- Sluit de browser
Code:
pakkettest;import org.openqa.selenium.By;importeer org.openqa.selenium.WebDriver;importeer org.openqa.selenium.WebElement;importeer org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.interactions.Actions;openbare klas ContextClick {public static void main (String [] args) gooit InterruptedException {WebDriver-stuurprogramma;System.setProperty ("webdriver.chrome.driver", "X: //chromedriver.exe");driver = nieuwe ChromeDriver ();// Start de te testen applicatie (AUT)driver.get ("http://demo.guru99.com/test/simple_context_menu.html");driver.manage (). window (). maximaliseren ();// Klik met de rechtermuisknop op de knop om de menu-opties voor de rechtermuisknop te openenActies actie = nieuwe acties (bestuurder);WebElement link = driver.findElement (By.cssSelector (". Context-menu-one"));action.contextClick (link) .perform ();// Klik op de link Bewerken in de weergegeven menu-optiesWebElement-element = driver.findElement (By.cssSelector (". Contextmenu-icon-copy"));element.click ();// Accepteer de weergegeven waarschuwing//driver.switchTo (). alert (). accept ();// De driverinstantie sluiten//driver.quit ();
Resultaat:
Overzicht:
- De Actions-klasse in Selenium wordt meestal gebruikt om complexe toetsenbord- en muisbewerkingen uit te voeren. Daarom heeft de Action-klasse de voorkeur in vergelijking met Javascript voor het uitvoeren van bewerkingen zoals rechtsklikken en dubbelklikken in Selenium.
- Rechtsklikken wordt meestal gebruikt bij het uitvoeren van rechtsklikken op een element om een nieuw menu te openen. Rechtsklikken in Selenium-webstuurprogramma kan worden gedaan met behulp van het vooraf gedefinieerde commando Context Click, zoals hieronder vermeld
Acties actie = nieuwe acties (bestuurder);WebElement link = driver.findElement (By.ID ("Element ID"));action.contextClick (link) .perform ();
- Dubbelklikbewerking wordt gebruikt wanneer de toestand van het webelement verandert na dubbelklikbewerking. Dubbelklik-bediening in Selenium-webstuurprogramma kan worden gedaan met behulp van het vooraf gedefinieerde commando Dubbelklik zoals hieronder vermeld
Acties actie = nieuwe acties (bestuurder);WebElement link = driver.findElement (By.ID ("Element ID"));actie. doubleClick (link) .perform ();