राइट क्लिक करें और Double क्लिक करें Selenium

⚡ स्मार्ट सारांश

राइट क्लिक करें और Double क्लिक करें Selenium क्या माउस क्रियाएं Actions क्लास के माध्यम से स्वचालित होती हैं? यह ट्यूटोरियल दोनों क्रियाओं को क्रियान्वित करके दिखाता है। Java कोड, वास्तविक परीक्षण परिदृश्य और उन्हें संचालित करने वाली विधियाँ Selenium वेबड्राइवर.

  • मुख्य विधि: Actions क्लास किसी भी WebElement पर राइट क्लिक के लिए contextClick() और डबल क्लिक के लिए doubleClick() को एक्सपोज़ करती है।
  • 🧭 कार्यप्रवाह पैटर्न: एलिमेंट का पता लगाएं, ड्राइवर के साथ एक्शन को इंस्टैंशिएट करें, एक्शन को कॉल करें, और निष्पादन के लिए perform() को चेन करें।
  • 🧪 परीक्षित परिदृश्य: दोनों उदाहरण सत्यापित और दोहराने योग्य परिणामों के लिए demo.guru99.com/test/simple_context_menu.html को लक्षित करते हैं।
  • 🆚 क्रिया विभेद: दायाँ क्लिक करने पर संदर्भ मेनू खुलते हैं; दोहरा क्लिक करने पर अलर्ट या संपादन जैसे स्थिति परिवर्तन होते हैं।
  • 🤖 ऐ एकीकरण: स्व-उपचार लोकेटर और एआई-सहायता प्राप्त Selenium फ्रेमवर्क क्लिक क्रियाओं के दौरान अस्थिरता को कम करते हैं।

राइट क्लिक करें और Double क्लिक करें Selenium

दायाँ क्लिक करें Selenium

राइट क्लिक क्रिया Selenium वेबड्राइवर को एक्शन क्लास का उपयोग करके किया जाता है। इस ऑपरेशन को कॉन्टेक्स्ट क्लिक भी कहा जाता है। पूर्वनिर्धारित 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. “right click me” बटन पर राइट क्लिक करें
  3. प्रदर्शित मेनू पर एडिट लिंक पर क्लिक करें
  4. अलर्ट पर ओके क्लिक करें
  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 वेबड्राइवर पूर्वनिर्धारित का उपयोग करता है doubleClick() विधि। एक्शन क्लास, राइट क्लिक, ड्रैग एंड ड्रॉप और होवर जैसे संयुक्त माउस और कीबोर्ड कार्यों के लिए मानक सहायक है।

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

निष्पादन प्रवाह इस प्रकार है:

  • ड्राइवर इंस्टेंस का उपयोग करके एक एक्शन ऑब्जेक्ट को इंस्टैंशिएट करें।
  • लक्ष्य तत्व का पता लगाएं findElement.
  • कॉल doubleClick() और चेन perform() निष्पादन हेतु।

कैसे करें Double क्लिक करें Selenium

अगला परिदृश्य एक पूर्ण डबल क्लिक को दर्शाता है जो एक क्रिया को ट्रिगर करता है। Javaयह स्क्रिप्ट अलर्ट जारी करती है और प्रोग्रामेटिक रूप से इसकी पुष्टि करती है।

परीक्षण परिदृश्य:

  • प्रक्षेपण: https://demo.guru99.com/test/simple_context_menu.html
  • Double बटन को क्लिक करे "Double- अलर्ट देखने के लिए मुझ पर क्लिक करें
  • अलर्ट पर ओके क्लिक करें

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 डॉक्स।

Actions क्लास इवेंट्स को कतार में रखती है। perform() फ़ंक्शन के बिना, क्रमबद्ध चरण कभी भी निष्पादित नहीं होते। perform() कतार को खाली कर देता है और कतार में मौजूद प्रत्येक क्रिया को क्रम से निष्पादित करता है।

हाँ, Javaस्क्रिप्ट एक्जीक्यूटर डबल क्लिक ट्रिगर कर सकता है, लेकिन यह वास्तविक ब्राउज़र इवेंट्स को बायपास कर देता है। एक्शन्स वाला तरीका बेहतर है। Selenium पूरा करने के बाद भी लिए जा सकते हैं।

हाँ। हेडलेस क्रोम में राइट क्लिक और एक्शन के माध्यम से डबल क्लिक काम करते हैं। Firefox बशर्ते W3C एक्शन API समर्थित हो। Selenium 4 ड्राइवर इसका पूरी तरह से समर्थन करते हैं।

एक्शन क्लास आ गई Selenium WebDriver 2.0 org.openqa.selenium.interactions के अंदर है और इसे बरकरार रखा गया है Selenium 3 और 4 में W3C एक्शन का समर्थन उपलब्ध है।

एआई उपकरण और Selenium विकल्प क्लिक के दौरान एलिमेंट में होने वाले बदलावों के अनुसार खुद को ढालने वाले सेल्फ-हीलिंग लोकेटर लागू करें, जिससे डायनामिक आईडी या बदलते लेआउट से होने वाली अनियमित विफलताओं को कम किया जा सके।

हाँ। एआई कोड सहायक सरल अंग्रेजी परिदृश्य को परिवर्तित कर सकते हैं। Selenium Java or Python contextClick() और doubleClick() का उपयोग करने वाला कोड, साथ ही मजबूत लोकेटर और प्रतीक्षा का सुझाव देना।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: