Κάντε δεξί κλικ και Double Κάντε κλικ στο Selenium

⚡ Έξυπνη Σύνοψη

Κάντε δεξί κλικ και Double Κάντε κλικ στο Selenium είναι οι ενέργειες του ποντικιού που αυτοματοποιούνται μέσω της κλάσης Actions. Αυτό το σεμινάριο παρουσιάζει και τις δύο λειτουργίες με λειτουργικό Java κώδικα, πραγματικά σενάρια δοκιμών και οι μέθοδοι που τα οδηγούν μέσα Selenium WebDriver.

  • 🖱️ Βασική μέθοδος: Η κλάση Actions εμφανίζει την contextClick() για δεξί κλικ και την doubleClick() για διπλό κλικ σε οποιοδήποτε WebElement.
  • 🧭 Πρότυπο ροής εργασίας: Εντοπίστε το στοιχείο, δημιουργήστε ένα αντίγραφο των Ενέργειων με το πρόγραμμα οδήγησης, καλέστε την ενέργεια και αλληλουχήστε την perform() για εκτέλεση.
  • 🧪 Δοκιμασμένο σενάριο: Και τα δύο παραδείγματα στοχεύουν στο demo.guru99.com/test/simple_context_menu.html για επαληθευμένα, επαναλήψιμα αποτελέσματα.
  • 🆚 Διάκριση Δράσης: Με δεξί κλικ ανοίγουν μενού περιβάλλοντος. Με διπλό κλικ ενεργοποιούνται αλλαγές κατάστασης, όπως ειδοποιήσεις ή επεξεργασίες.
  • 🤖 Ενσωμάτωση AI: Αυτοθεραπευόμενοι εντοπιστές και υποβοηθούμενοι από τεχνητή νοημοσύνη Selenium Τα frameworks μειώνουν την ασταθή εικόνα κατά τη διάρκεια των κλικ.

Κάντε δεξί κλικ και Double Κάντε κλικ στο Selenium

Κάντε δεξί κλικ μέσα Selenium

Ενέργεια με δεξί κλικ Selenium Το WebDriver γίνεται χρησιμοποιώντας την κλάση Actions. Η λειτουργία ονομάζεται επίσης Context Click. Το προκαθορισμένο contextClick() Η μέθοδος της κλάσης Actions εκτελεί το δεξί κλικ. Παρακάτω είναι η βασική σύνταξη.

Actions actions = new Actions(driver);
WebElement elementLocator = driver.findElement(By.id("ID"));
actions.contextClick(elementLocator).perform();

Πώς να κάνετε δεξί κλικ Selenium

Το παρακάτω σενάριο ξεκινάει ένα Guru99 σελίδα επίδειξης, κάνει δεξί κλικ και επιλέγει μια επιλογή από το μενού περιβάλλοντος που εμφανίζεται.

Σενάριο δοκιμής:

  1. Εκτόξευση: https://demo.guru99.com/test/simple_context_menu.html
  2. Κάντε δεξί κλικ στο κουμπί «δεξί κλικ σε εμένα»
  3. Κάντε κλικ στον σύνδεσμο Επεξεργασία στο εμφανιζόμενο μενού
  4. Κάντε κλικ στο κουμπί OK στην ειδοποίηση
  5. Κλείστε το πρόγραμμα περιήγησης

Code:

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

        driver.get("https://demo.guru99.com/test/simple_context_menu.html");
        driver.manage().window().maximize();

        Actions action = new Actions(driver);
        WebElement link = driver.findElement(By.cssSelector(".context-menu-one"));
        action.contextClick(link).perform();

        WebElement element = driver.findElement(By.cssSelector(".context-menu-icon-copy"));
        element.click();
    }
}

Αποτέλεσμα: Εμφανίζεται το μενού περιβάλλοντος και επιλέγεται η επιλογή Επεξεργασία.

Κάντε δεξί κλικ μέσα Selenium

Double Κάντε κλικ στο Selenium

Ακολουθώντας το ίδιο μοτίβο που βασίζεται σε ενέργειες, Double Κάντε κλικ στο Selenium Το WebDriver χρησιμοποιεί το προκαθορισμένο doubleClick() Η κλάση Actions είναι ο τυπικός βοηθός για σύνθετες λειτουργίες ποντικιού και πληκτρολογίου, όπως δεξί κλικ, μεταφορά και απόθεση και τοποθέτηση του δείκτη του ποντικιού.

Actions actions = new Actions(driver);
WebElement elementLocator = driver.findElement(By.id("ID"));
actions.doubleClick(elementLocator).perform();

Η ροή εκτέλεσης είναι:

  • Δημιουργήστε ένα αντικείμενο Actions χρησιμοποιώντας την παρουσία του προγράμματος οδήγησης.
  • Εντοπίστε το στοιχείο-στόχο με findElement.
  • Καλέστε doubleClick() και αλυσίδα perform() να εκτελέσει.

πώς να Double Κάντε κλικ στο Selenium

Το επόμενο σενάριο παρουσιάζει ένα πλήρες διπλό κλικ που ενεργοποιεί ένα JavaΕιδοποίηση σεναρίου και επιβεβαιώνεται μέσω προγραμματισμού.

Σενάριο δοκιμής:

  • Εκτόξευση: https://demo.guru99.com/test/simple_context_menu.html
  • Double κάντε κλικ στο κουμπί «Double-Κάντε κλικ σε εμένα για να δείτε την ειδοποίηση"
  • Κάντε κλικ στο κουμπί OK στην ειδοποίηση

Code:

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 DoubleClickDemo {
    public static void main(String[] args) throws InterruptedException {
        WebDriver driver;
        System.setProperty("webdriver.chrome.driver", "X://chromedriver.exe");
        driver = new ChromeDriver();

        driver.get("https://demo.guru99.com/test/simple_context_menu.html");
        driver.manage().window().maximize();

        Actions action = new Actions(driver);
        WebElement link = driver.findElement(By.xpath("//button[text()='Double-Click Me To See Alert']"));
        action.doubleClick(link).perform();

        Alert alert = driver.switchTo().alert();
        System.out.println("Alert Text\n" + alert.getText());
        alert.accept();
    }
}

Αποτέλεσμα: Η ειδοποίηση εμφανίζεται και το κείμενο της ειδοποίησης εκτυπώνεται Eclipse κονσόλα.

Double Κάντε κλικ στο Selenium ειδοποιεί

Double Κάντε κλικ στην έξοδο της κονσόλας

Συχνές Ερωτήσεις

Η συνάρτηση WebElement.click() ενεργοποιεί μόνο ένα αριστερό κλικ. Το δεξί κλικ και το διπλό κλικ είναι σύνθετα συμβάντα ποντικιού που απαιτούν την αλυσιδωτή σύνδεση και την αποστολή της κλάσης Actions μέσω της συνάρτησης perform().

Ναι. Η συνάρτηση contextClick() προσομοιώνει ένα πραγματικό δεξί κλικ και ανοίγει το μενού περιβάλλοντος της εφαρμογής. Οι δύο όροι χρησιμοποιούνται εναλλακτικά στο Selenium docs.

Η κλάση Actions τοποθετεί τα συμβάντα στην ουρά. Χωρίς την perform(), τα αλυσιδωτά βήματα δεν αποστέλλονται ποτέ. Η perform() εκκαθαρίζει την ουρά και εκτελεί κάθε ενέργεια που βρίσκεται στην ουρά με τη σειρά.

Ναι, JavaΤο Script Executor μπορεί να κάνει διπλό κλικ, αλλά παρακάμπτει τα πραγματικά συμβάντα του προγράμματος περιήγησης. Η προσέγγιση Actions είναι η συνιστώμενη. Selenium πρότυπο.

Ναι. Το δεξί κλικ και το διπλό κλικ μέσω των Ενεργειών λειτουργούν σε Chrome χωρίς κεφαλίδες και Firefox με την προϋπόθεση ότι υποστηρίζεται το W3C Actions API. Selenium 4 οδηγοί το υποστηρίζουν πλήρως.

Η τάξη Δράσεων έφτασε στο Selenium Το WebDriver 2.0 βρίσκεται μέσα στο org.openqa.selenium.interactions και διατηρείται στο Selenium 3 και 4 με υποστήριξη του W3C Actions.

Εργαλεία Τεχνητής Νοημοσύνης και Selenium εναλλακτικές λύσεις Εφαρμόστε αυτοεπιδιορθούμενους εντοπιστές που προσαρμόζονται στις αλλαγές στοιχείων κατά τη διάρκεια των κλικ, μειώνοντας τις ασταθείς αποτυχίες από δυναμικά αναγνωριστικά ή μεταβαλλόμενες διατάξεις.

Ναι. Οι βοηθοί κώδικα τεχνητής νοημοσύνης μπορούν να μετατρέψουν ένα απλό σενάριο σε Selenium Java or Python κώδικα χρησιμοποιώντας contextClick() και doubleClick(), καθώς και προτάσεις για ισχυρούς εντοπιστές και αναμονές.

Συνοψίστε αυτήν την ανάρτηση με: