Geckodriver'ı İndirin: Nasıl Kurulur Firefox sürücüsü Selenium
GeckoDriver nedir? Selenium?
Gecko terimi, Mozilla'da yerleşik bir Web Tarayıcı motoru anlamına gelir. Firefox tarayıcı. Gecko sürücüsü, Web Sürücüsü etkinleştirilmiş istemciler arasında bir proxy görevi görür.Eclipse, Netbeans, vb.) ve Mozilla Firefox tarayıcı. Kısaca, Gecko sürücüsü, tarayıcı ile Gecko arasında bir bağlantı görevi görür. Selenium Web Sürücüsü testleri ve Mozilla Firefox tarayıcı.
önce Selenium 3,Mozilla Firefox tarayıcı varsayılan tarayıcıydı Selenium. Sonra Selenium 3, test uzmanlarının kullanmak için betiği başlatması gerekiyor Firefox GeckoDriver'ı açıkça kullanmak. Selenium İstekleri GeckoDriver'a göndermek için W3C Webdriver protokolünü kullanır ve bu da onları adlı bir protokole çevirir. MariOnette. Firefox şeklinde iletilen komutları anlayacaklardır. Marionette protokolü ve bunları yürütür.
GeckoDriver Nasıl İndirilir ve Kurulur Selenium
Gecko Sürücüsü, sisteme indirilebilen bir yürütülebilir dosya olarak mevcuttur. Aşağıda gecko sürücüsünü indirmek için gereken adımların listesi bulunmaktadır.
Aşama 1 ) Uygun sürümü seçin.
Bu sayfada https://github.com/mozilla/geckodriver/releases ,İşletim sisteminize göre GeckoDriver indirmesi için uygun sürümü seçin
) 2 Adım ZIP dosyasını çıkarın.
ZIP dosyasının indirilmesi tamamlandıktan sonra ZIP Dosyasının içeriğini bir dosya klasörüne çıkarın
) 3 Adım Konumu not edin.
Sürücüyü çıkardığınız konumu not edin. Konum daha sonra sürücüyü örneklemek için kullanılacaktır.
GeckoDriver'ı başlatmanın yolları
GeckoDriver'ı başlatmanın üç farklı yolu vardır.
1. İstenilen Yetenekleri Kullanmak
İlk olarak Gecko Driver için sistem özelliğini ayarlayın.
Sözdizimi:
System.setProperty("webdriver.gecko.driver","Path to geckdriver.exe file");
Örnek:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Ardından İstenilen Yetenekleri ayarlayın.
İstenilen Yetenekler yardımı Selenium Otomatik testleri yürütmek için tarayıcı adını, sürümünü ve işletim sistemini anlamak. Aşağıda DesiredCapaability sınıfını kullanarak geko sürücüsünü ayarlama kodu verilmiştir.
DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true);
İşte kodun tamamı
System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true); driver= new FirefoxDriver(capabilities);
2. Kukla özelliğini kullanma
Gecko sürücüsü aşağıdaki gibi kukla özelliği kullanılarak da başlatılabilir.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Geko sürücüsü yukarıdaki yöntem kullanılarak başlatılırsa istenen yeteneklere ilişkin kod değil gereklidir.
3. kullanma FirefoxOpsiyonlar
mozilla Firefox sürüm 47+, eski bir sistem olarak kukla sürücüsüne sahiptir. Bundan yararlanarak kukla sürücüsü kullanılarak çağrılabilir. Firefox Aşağıdaki gibi seçenekler
FirefoxOptions options = new FirefoxOptions(); options.setLegacy(true);
Gecko sürücüsünü kullanarak Firefox'u başlatmak için kod
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("http://demo.guru99.com/selenium/guru99home/"); } @After public void endTest() { driver.quit(); } }
Kod Açıklama
@Before yöntemi
Başlangıçta, geko sürücüsünün sistem özelliğini geckdriver.exe dosya indirme konumuna ayarlamamız gerekiyor. Bunun için marionette özelliğini true olarak ayarlamamız gerekiyor. Selenium kullanmak MariGecko Driver ile iletişim kurmak için onette protokolü. Son olarak, başlamamız gerekiyor Firefox İstenen Yetenekler için nesneyi kullanan tarayıcı örneği.
Aşağıdaki ifadeler yukarıdaki görevi gerçekleştirmeye yardımcı olur.
System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true); driver= new FirefoxDriver(capabilities);
@Test metodu
Tarafından sağlanan dahili "get" yöntemini kullanarak kullanıcı tarafından belirlenen URL'ye gidiyoruz. Selenium ağ sürücüsü. Aşağıdaki ifade aynı sonuca ulaşmaya yardımcı olur.
driver.get("http://demo.guru99.com/selenium/guru99home/");
@After yöntemi
Son olarak Quit metodunu kullanarak tarayıcı örneğini kapatıyoruz.
driver.quit();
Gecko olmayanlar için bir komut dosyasını Gecko olarak değiştirin
Daha önce kullanılan geko olmayan sürücü komut dosyası Selenium 3 basitti. Bir örneğini oluşturmamız gerekiyor Firefox sürücüyü seçin ve örnek değişkenini kullanın.
@Before public void startBrowser() { driver = new FirefoxDriver(); }
Geko'ya dönüştürmek için bir satır kod eklemeniz yeterlidir
@Before public void startBrowser() { System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe"); driver = new FirefoxDriver(); }
Gecko Sürücüsünü kullanırken yaygın istisnalar oluştu
Aşağıda Gecko Sürücüsü kullanılırken ortaya çıkabilecek yaygın istisnaların bir listesi ve çözümleri yer almaktadır.
Gecko Sürücüsünü kullanmanın avantajı
Selenium Web sürücüsü 2.53 sürümü Mozilla ile uyumlu değil Firefox sürüm 47.0+. Firefox Mozilla'nın önceki sürümlerinde kullanılan sürücü Firefox durdurulacak ve yalnızca GeckoDriver uygulaması kullanılacaktır. Bu nedenle test uzmanları Mozilla'da otomatik testler yapmak isterlerse GeckoDriver'ı kullanmak zorunda kalıyorlar Firefox sürüm 47.0+. Ama asıl soru şu; avantajı nedir?
Varsayılanın aksine GeckoDriver kullanmanın en büyük avantajı Firefox sürücü uygunluk. GeckoDriver'ın kullanım alanları W3C Web Sürücüsü protokolü Ile iletişim kurmak Selenium. W3C, Web Sürücüsü için evrensel olarak tanımlanmış bir standarttır. Bu şu anlama gelir Selenium Geliştiriciler (Kod yazan kişiler Selenium Base) her tarayıcı sürümü için Web Sürücüsünün yeni bir sürümünü oluşturmanıza gerek yoktur. Aynı Web Sürücüsü birden fazla tarayıcı sürümü için kullanılabilir. Bu nedenle GeckoDriver, önceki uygulamaya kıyasla tercih edilir. Firefox sürücüsü.