Geckodriver को डाउनलोड करें Firefox & Selenium
GeckoDriver क्या है? Selenium?
गेको शब्द का अर्थ है वेब ब्राउज़र इंजन जो मोज़िला में अंतर्निहित है Firefox ब्राउज़र. गेको ड्राइवर वेब ड्राइवर सक्षम क्लाइंट के बीच प्रॉक्सी के रूप में कार्य करता है(Eclipse, नेटबीन्स, आदि) और मोज़िला Firefox ब्राउज़र। संक्षेप में, गेको ड्राइवर एक लिंक के रूप में कार्य करता है Selenium वेब ड्राइवर परीक्षण और मोज़िला Firefox ब्राउज़र.
से पहले Selenium 3, मोज़िला Firefox ब्राउज़र डिफ़ॉल्ट ब्राउज़र था Selenium। बाद Selenium 3, परीक्षकों को उपयोग करने के लिए स्क्रिप्ट को आरंभीकृत करना होगा Firefox GeckoDriver का स्पष्ट रूप से उपयोग करना. Selenium गेकोड्राइवर को अनुरोध भेजने के लिए W3C वेबड्राइवर प्रोटोकॉल का उपयोग करता है, जो उन्हें नामक प्रोटोकॉल में अनुवादित करता है Mariओनेट. Firefox के रूप में प्रेषित आदेशों को समझेंगे Mariओनेट प्रोटोकॉल का उपयोग करता है और उन्हें निष्पादित करता है।
GeckoDriver को कैसे डाउनलोड और इंस्टॉल करें? Selenium
गेको ड्राइवर एक निष्पादन योग्य फ़ाइल के रूप में उपलब्ध है जिसे सिस्टम पर डाउनलोड किया जा सकता है। गेको ड्राइवर डाउनलोड करने के चरणों की सूची निम्नलिखित है।
चरण 1 ) उपयुक्त संस्करण का चयन करें.
इस पृष्ठ पर https://github.com/mozilla/geckodriver/releases अपने ऑपरेटिंग सिस्टम के आधार पर GeckoDriver डाउनलोड के लिए उपयुक्त संस्करण का चयन करें
चरण 2) ज़िप फ़ाइल निकालें।
एक बार ZIP फ़ाइल डाउनलोड पूरा हो जाने पर, ZIP फ़ाइल की सामग्री को फ़ाइल फ़ोल्डर में निकालें
चरण 3) स्थान नोट करें.
उस स्थान को नोट करें जहाँ आपने ड्राइवर निकाला था। ड्राइवर को इंस्टैंसिएट करने के लिए बाद में स्थान का उपयोग किया जाएगा।
गेकोड्राइवर को आरंभ करने के तरीके
गेकोड्राइवर को आरंभ करने के तीन अलग-अलग तरीके हैं।
1. वांछित क्षमताओं का उपयोग करना
सबसे पहले, Gecko Driver के लिए सिस्टम प्रॉपर्टी सेट करें।
सिंटेक्स:
System.setProperty("webdriver.gecko.driver","Path to geckdriver.exe file");
उदाहरण:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
इसके बाद, वांछित क्षमताएं निर्धारित करें।
वांछित क्षमताएं सहायता करती हैं Selenium स्वचालित परीक्षणों को निष्पादित करने के लिए ब्राउज़र का नाम, संस्करण और ऑपरेटिंग सिस्टम को समझना। DesiredCapabilities क्लास का उपयोग करके गेको ड्राइवर सेट करने के लिए नीचे कोड दिया गया है।
DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true);
यहाँ पूरा कोड है
System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true); driver= new FirefoxDriver(capabilities);
2. कठपुतली संपत्ति का उपयोग करना
गेको ड्राइवर को नीचे दिए गए अनुसार मैरियोनेट प्रॉपर्टी का उपयोग करके भी आरंभ किया जा सकता है
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
यदि गेको ड्राइवर को उपरोक्त विधि का उपयोग करके आरंभ किया जाता है, तो वांछित क्षमताओं के लिए कोड है नहीं आवश्यक.
3। का प्रयोग Firefoxऑप्शंस
मोज़िला Firefox संस्करण 47+ में मैरियनेट ड्राइवर एक विरासत प्रणाली के रूप में है। इसका लाभ उठाते हुए, मैरियनेट ड्राइवर को उपयोग करके बुलाया जा सकता है Firefox विकल्प नीचे दिए गए हैं
FirefoxOptions options = new FirefoxOptions(); options.setLegacy(true);
गेको ड्राइवर का उपयोग करके फ़ायरफ़ॉक्स लॉन्च करने के लिए कोड
package com.guru99.demo; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.remote.DesiredCapabilities; public class GeckoDriverDemo { String driverPath = "D:\\Guru99Demo\\GeckoDriver.exe"; public WebDriver driver; @Before public void startBrowser() { System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette", true); driver = new FirefoxDriver(capabilities); } @Test public void navigateToUrl() { driver.get("https://demo.guru99.com/selenium/guru99home/"); } @After public void endTest() { driver.quit(); } }
कोड स्पष्टीकरण
@Before विधि
शुरुआत में, हमें gecko ड्राइवर के लिए सिस्टम प्रॉपर्टी को geckdriver.exe फ़ाइल डाउनलोड स्थान पर सेट करना होगा। हमें marionette प्रॉपर्टी को true पर सेट करना होगा। Selenium उपयोग करने के लिए Mariगेको ड्राइवर के साथ संवाद करने के लिए ओनेट प्रोटोकॉल। अंत में, हमें शुरू करने की आवश्यकता है Firefox वांछित क्षमताओं के लिए ऑब्जेक्ट का उपयोग करने वाला ब्राउज़र इंस्टेंस।
नीचे दिए गए कथन उपरोक्त कार्य को पूरा करने में मदद करते हैं।
System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true); driver= new FirefoxDriver(capabilities);
@परिक्षण विधि
हम द्वारा प्रदान की गई इनबिल्ट “get” विधि का उपयोग करके उपयोगकर्ता-निर्दिष्ट URL पर नेविगेट कर रहे हैं Selenium वेब ड्राइवर। नीचे दिया गया कथन इसे प्राप्त करने में मदद करता है।
driver.get("https://demo.guru99.com/selenium/guru99home/");
@आफ्टर विधि
अंत में, हम quit विधि का उपयोग करके ब्राउज़र इंस्टेंस को बंद कर रहे हैं।
driver.quit();
गैर-गेको के लिए एक स्क्रिप्ट को गेको में संशोधित करें
पहले इस्तेमाल की गई नॉन-गेको ड्राइवर स्क्रिप्ट Selenium 3 सीधा था। हमें इसका एक उदाहरण बनाने की जरूरत है Firefox ड्राइवर और उदाहरण चर का उपयोग करें.
@Before public void startBrowser() { driver = new FirefoxDriver(); }
गेको में बदलने के लिए, आपको बस कोड की एक पंक्ति जोड़नी होगी
@Before public void startBrowser() { System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe"); driver = new FirefoxDriver(); }
गेको ड्राइवर का उपयोग करते समय सामान्य अपवाद हुए
निम्नलिखित उन सामान्य अपवादों की सूची है जो गेको ड्राइवर का उपयोग करते समय और समाधान के साथ होते हैं।
गेको ड्राइवर का उपयोग करने का लाभ
Selenium वेबड्राइवर संस्करण 2.53 मोज़िला के साथ संगत नहीं है Firefox संस्करण 47.0+. Firefox मोज़िला के पुराने संस्करणों में प्रयुक्त ड्राइवर Firefox बंद कर दिया जाएगा, और केवल गेकोड्राइवर कार्यान्वयन का उपयोग किया जाएगा। इसलिए यदि परीक्षक मोज़िला पर स्वचालित परीक्षण चलाना चाहते हैं तो उन्हें गेकोड्राइवर का उपयोग करने के लिए मजबूर होना पड़ता है Firefox संस्करण 47.0+. लेकिन बड़ा सवाल - लाभ क्या है?
डिफ़ॉल्ट के विपरीत GeckoDriver का उपयोग करने का प्रमुख लाभ Firefox ड्राइवर है अनुकूलता. गेकोड्राइवर का उपयोग करता है W3C वेबड्राइवर प्रोटोकॉल के साथ संवाद करने के लिए Selenium. W3C वेब ड्राइवर के लिए एक सार्वभौमिक रूप से परिभाषित मानक है। इसका मतलब है Selenium डेवलपर्स (कोड लिखने वाले लोग) Selenium बेस) को प्रत्येक ब्राउज़र संस्करण के लिए वेब ड्राइवर का नया संस्करण बनाने की आवश्यकता नहीं है। एक ही वेब ड्राइवर का उपयोग कई ब्राउज़र संस्करणों के लिए किया जा सकता है। इसलिए, गेकोड्राइवर को पहले के कार्यान्वयन की तुलना में प्राथमिकता दी जाती है Firefox चालक।