अलर्ट और पॉपअप को कैसे संभालें Selenium?
अलर्ट क्या है? Selenium?
An में अलर्ट Selenium यह एक छोटा संदेश बॉक्स है जो उपयोगकर्ता को कुछ जानकारी या सूचना देने के लिए स्क्रीन पर दिखाई देता है। यह उपयोगकर्ता को कुछ विशिष्ट जानकारी या त्रुटि के बारे में सूचित करता है, कुछ कार्य करने की अनुमति मांगता है और साथ ही चेतावनी संदेश भी प्रदान करता है।
इस ट्यूटोरियल में हम सीखेंगे कि पॉपअप को कैसे हैंडल किया जाए। Selenium और वेब एप्लिकेशन में पाए जाने वाले विभिन्न प्रकार के अलर्ट परीक्षणहम यह भी देखेंगे कि अलर्ट को कैसे हैंडल किया जाए Selenium WebDriver पर जाएं और जानें कि हम अलर्ट के प्रकार के आधार पर अलर्ट को कैसे स्वीकार और अस्वीकार करते हैं।
अलर्ट के प्रकार Selenium
1) Simple Alert
सरल चेतावनी वर्ग Selenium स्क्रीन पर कुछ जानकारी या चेतावनी प्रदर्शित करता है.
2) Prompt Alert
इस Prompt Alert उपयोगकर्ता से कुछ इनपुट मांगता है और Selenium वेबड्राइवर sendkeys(” input…. “) का उपयोग करके पाठ दर्ज कर सकता है।
3) Confirmation Alert
यह पुष्टिकरण अलर्ट किसी प्रकार का ऑपरेशन करने की अनुमति मांगता है।
अलर्ट को कैसे संभालें Selenium वेबड्राइवर
अलर्ट इंटरफ़ेस नीचे कुछ विधियाँ प्रदान करता है जो व्यापक रूप से उपयोग की जाती हैं Selenium वेबड्राइवर.
1) शून्य खारिज() // अलर्ट के 'रद्द करें' बटन पर क्लिक करें।
driver.switchTo().alert().dismiss();
2) शून्य स्वीकार()// अलर्ट के 'ओके' बटन पर क्लिक करें।
driver.switchTo().alert().accept();
3) स्ट्रिंग getText() // चेतावनी संदेश कैप्चर करने के लिए.
driver.switchTo().alert().getText();
4) शून्य sendKeys(स्ट्रिंग stringToSend) // अलर्ट बॉक्स में कुछ डेटा भेजने के लिए.
driver.switchTo().alert().sendKeys("Text");
आप देख सकते हैं कि नीचे दी गई स्क्रीन में कई अलर्ट विधियां प्रदर्शित की गई हैं, जैसा कि सुझाया गया है Eclipse.
हम मुख्य विंडो से अलर्ट पर आसानी से स्विच कर सकते हैं Seleniumहै ।पर स्विच() विधि.
अब हम नीचे दिए गए परिदृश्य को स्वचालित करते हैं।
इस परिदृश्य में, हम गुरु99 डेमो साइट का उपयोग करके इसका वर्णन करेंगे Selenium सतर्कता से संचालन.
चरण 1) वेब ब्राउज़र लॉन्च करें और साइट खोलें https://demo.guru99.com/test/delete_customer.php
चरण 2) कोई भी ग्राहक आईडी दर्ज करें.
चरण 3) ग्राहक आईडी दर्ज करने के बाद, “सबमिट” बटन पर क्लिक करें।
चरण 4) अलर्ट को अस्वीकार/स्वीकार करें.
अलर्ट को संभालना Selenium वेबड्राइवर
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.NoAlertPresentException;
import org.openqa.selenium.Alert;
public class AlertDemo {
public static void main(String[] args) throws NoAlertPresentException,InterruptedException {
System.setProperty("webdriver.chrome.driver","G:\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
// Alert Message handling
driver.get("https://demo.guru99.com/test/delete_customer.php");
driver.findElement(By.name("cusid")).sendKeys("53920");
driver.findElement(By.name("submit")).submit();
// Switching to Alert
Alert alert = driver.switchTo().alert();
// Capturing alert message.
String alertMessage= driver.switchTo().alert().getText();
// Displaying alert message
System.out.println(alertMessage);
Thread.sleep(5000);
// Accepting alert
alert.accept();
}
}
आउटपुट:
जब आप उपरोक्त कोड निष्पादित करते हैं, तो यह साइट लॉन्च करता है। स्क्रीन पर प्रदर्शित होने वाले पुष्टिकरण अलर्ट को संभालकर ग्राहक आईडी को हटाने का प्रयास करें, और इस तरह एप्लिकेशन से ग्राहक आईडी को हटा दें।
पॉप-अप विंडो को कैसे संभालें Selenium वेबड्राइवर
स्वचालन में, जब हमारे पास किसी वेब एप्लिकेशन में कई विंडो होती हैं, तो गतिविधि को ऑपरेशन पूरा करने के लिए कई विंडो के बीच नियंत्रण स्विच करने की आवश्यकता हो सकती है। ऑपरेशन पूरा होने के बाद, इसे मुख्य विंडो यानी पैरेंट विंडो में वापस लौटना पड़ता है। Seleniumहम इसे लेख में आगे एक उदाहरण के साथ देखेंगे।
In Selenium वेब ड्राइवर में ऐसे तरीके हैं जिनके माध्यम से हम कई विंडोज़ को संभाल सकते हैं।
ड्राइवर.getWindowHandles();
वेब ड्राइवर द्वारा सभी खुली हुई विंडो को संभालने के लिए, हम “Driver.getWindowHandles()” का उपयोग कर सकते हैं और फिर हम वेब एप्लिकेशन में एक विंडो से दूसरी विंडो पर स्विच कर सकते हैं। इसका रिटर्न टाइप Iterator है .
ड्राइवर.getWindowHandle();
जब साइट खुलती है, तो हमें मुख्य विंडो को इस प्रकार संभालना होता है ड्राइवर.getWindowHandle()यह वर्तमान विंडो को हैंडल करेगा जो इसे इस ड्राइवर इंस्टेंस के भीतर विशिष्ट रूप से पहचानता है। इसका रिटर्न प्रकार स्ट्रिंग है।
विंडो हैंडलिंग के लिए Selenium, हम नीचे दिए गए चरणों का पालन करेंगे:
अब, हम नीचे दिए गए परिदृश्य को स्वचालित करेंगे, यह देखने के लिए कि एकाधिक विंडोज़ का उपयोग करके कैसे संभालना है Selenium वेबड्राइवर.
इस परिदृश्य में, हम विंडो हैंडलिंग को दर्शाने के लिए “Guru99” डेमो साइट का उपयोग करेंगे।
चरण 1) साइट लॉन्च करें.
ब्राउज़र लॉन्च करें और साइट खोलें https://demo.guru99.com/popup.php
चरण 2) “यहां क्लिक करें” लिंक पर क्लिक करें।
जब उपयोगकर्ता "यहां क्लिक करें" लिंक पर क्लिक करता है, तो नई चाइल्ड विंडो खुलती है।
चरण 3) नई चाइल्ड विंडो खुलती है.
एक नई विंडो खुलेगी, उपयोगकर्ता से ईमेल आईडी दर्ज करने और पेज सबमिट करने के लिए कहा जाएगा।
चरण 4) अपना ईमेल आईडी दर्ज करें और सबमिट करें।
चरण 5) पृष्ठ सबमिट करते समय एक्सेस क्रेडेंशियल प्रदर्शित करें।
जब आप कोड निष्पादित करेंगे, तो आप देखेंगे कि चाइल्ड विंडो नए टैब में खुली है।
- उस चाइल्ड विंडो को बंद करें जिस पर क्रेडेंशियल्स प्रदर्शित होते हैं।
- मूल विंडो पर स्विच करें.
एकाधिक को कैसे संभालें Windows in Selenium
import java.util.Iterator;
import java.util.Set;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class WindowHandle_Demo {
public static void main(String[] args) throws InterruptedException {
WebDriver driver=new FirefoxDriver();
//Launching the site.
driver.get("https://demo.guru99.com/popup.php");
driver.manage().window().maximize();
driver.findElement(By.xpath("//*[contains(@href,'popup.php')]")).click();
String MainWindow=driver.getWindowHandle();
// To handle all new opened window.
Set<String> s1=driver.getWindowHandles();
Iterator<String> i1=s1.iterator();
while(i1.hasNext())
{
String ChildWindow=i1.next();
if(!MainWindow.equalsIgnoreCase(ChildWindow))
{
// Switching to Child window
driver.switchTo().window(ChildWindow);
driver.findElement(By.name("emailid"))
.sendKeys("gaurav.3n@gmail.com");
driver.findElement(By.name("btnLogin")).click();
// Closing the Child Window.
driver.close();
}
}
// Switching to Parent window i.e Main Window.
driver.switchTo().window(MainWindow);
}
}
आउटपुट:
जब आप उपरोक्त कोड निष्पादित करते हैं, तो यह साइट लॉन्च करता है और "यहाँ क्लिक करें" लिंक पर क्लिक करने पर, यह एक नए टैब में चाइल्ड विंडो खोलता है। आप चाइल्ड विंडो को बंद कर सकते हैं, और ऑपरेशन पूरी तरह से हो जाने के बाद पैरेंट विंडो पर स्विच कर सकते हैं। इस प्रकार एप्लिकेशन में एक से अधिक विंडो को हैंडल किया जा सकता है।

निष्कर्ष
- हमने अलर्ट के प्रकारों को परिभाषित किया और उन्हें स्क्रीन शॉट के साथ दिखाया।
- अलर्ट को संभालने का प्रदर्शन किया Selenium WebDriver विशेष परिदृश्य का उपयोग कर रहा है।
- कई विंडोज़ को संभाला Selenium WebDriver विशेष परिदृश्य का उपयोग कर रहा है।














