Pobierz Geckodriver dla Firefox & Selenium
โก Inteligentne podsumowanie
GeckoDriver dla Firefox oraz Selenium dziaลa jako serwer proxy miฤdzy klientami W3C WebDriver a Mozillฤ Firefox, tลumaczenie poleceล na MariProtokรณล onette. W tym przewodniku wyjaลniono instalacjฤ, techniki inicjalizacji, przykลadowy kod, typowe wyjฤ tki i podstawowe zalety zgodnoลci.

W czym jest GeckoDriver Selenium?
Termin Gecko oznacza silnik przeglฤ darki internetowej wbudowany w Mozillฤ Firefox Przeglฤ darka. GeckoDriver dziaลa jako serwer proxy miฤdzy klientami obsลugujฤ cymi WebDriver (Eclipse, NetBeans, IntelliJ IDEA, itd.) i Mozilla Firefox Przeglฤ darka. Krรณtko mรณwiฤ c, GeckoDriver sลuลผy jako ลฤ cznik miฤdzy Selenium Testy WebDriver i Mozilla Firefox.
Przed Selenium 3, Mozilla Firefox przeglฤ darka byลa domyลlnฤ przeglฤ darkฤ dla Selenium, Po Selenium 3. Testerzy muszฤ zainicjowaฤ skrypt, aby go uลผyฤ Firefox jawnie poprzez GeckoDriver. Selenium uลผywa protokoลu W3C WebDriver do wysyลania ลผฤ daล do GeckoDriver, ktรณry tลumaczy je na protokรณล o nazwie Marionet. Firefox nastฤpnie rozumie polecenia transmitted w Mariformat protokoลu onette i je wykonuje.
Zaleta korzystania z GeckoDriver
Selenium Wersja WebDriver 2.53 nie jest zgodna z Mozillฤ Firefox wersja 47.0+. Dziedzictwo Firefox sterownik uลผywany we wczeลniejszych wersjach Mozilli Firefox kompilacje zostaลy wycofane i obecnie moลผna korzystaฤ wyลฤ cznie z implementacji GeckoDriver. W zwiฤ zku z tym testerzy muszฤ uลผywaฤ GeckoDriver do uruchamiania automatycznych testรณw w Mozilli. Firefox wersja 47.0 i wyลผsza.
Gลรณwnฤ zaletฤ korzystania z GeckoDriver w porรณwnaniu ze starszymi wersjami jest: Firefox kierowca jest zgodnoลฤ. GeckoDriver opiera siฤ na Protokรณล W3C WebDriver komunikowaฤ siฤ z Selenium. W3C to uniwersalnie zdefiniowany standard dla WebDriver. Oznacza to, Selenium Programiลci nie muszฤ tworzyฤ nowej wersji sterownika dla kaลผdej wersji przeglฤ darki. Tฤ samฤ implementacjฤ WebDriver moลผna stosowaฤ w wielu wersjach przeglฤ darek, dlatego GeckoDriver jest preferowany w porรณwnaniu ze starszym. Firefox kierowca.
Jak pobraฤ i zainstalowaฤ GeckoDriver w Selenium
GeckoDriver jest dystrybuowany jako plik wykonywalny, ktรณry moลผna pobraฤ bezpoลrednio do systemu. Wykonaj poniลผsze kroki, aby pobraฤ i zainstalowaฤ GeckoDriver. Selenium automatyzacja.
Krok 1) Wybierz odpowiedniฤ
wersjฤ.
Na oficjalnej stronie wydaล https://github.com/mozilla/geckodriver/releasesWybierz odpowiedniฤ
kompilacjฤ GeckoDriver, ktรณra odpowiada Twojemu systemowi operacyjnemu i architekturze.
Krok 2) Extracdo pliku ZIP.
Po zakoลczeniu pobierania pliku ZIP, np.tracjego zawartoลฤ do folderu na swoim komputerze.
Krok 3) Zwrรณฤ uwagฤ na lokalizacjฤ sterownika.
Zapisz ลcieลผkฤ do folderu, w ktรณrym siฤ znajdujesztracZainstalowano sterownik. Ta lokalizacja zostanie pรณลบniej uลผyta do utworzenia instancji sterownika ze skryptu testowego.
Sposoby inicjalizacji GeckoDriver
Istniejฤ trzy rรณลผne sposoby inicjalizacji GeckoDriver w Twoim Selenium skrypty testowe. Wybierz ten, ktรณry najlepiej pasuje do Twojego ลrodowiska testowego i Selenium wersja.
1. Korzystanie z poลผฤ danych moลผliwoลci
Najpierw ustaw wลaลciwoลฤ systemowฤ dla GeckoDriver.
Skลadnia:
System.setProperty("webdriver.gecko.driver","Path to geckodriver.exe file");
Przykลad:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Nastฤpnie ustaw poลผฤ dane moลผliwoลci. Poลผฤ dane moลผliwoลci pomagajฤ Selenium Poznaj nazwฤ przeglฤ darki, jej wersjฤ i system operacyjny wymagane do wykonania testรณw automatycznych. Poniลผej znajduje siฤ kod umoลผliwiajฤ cy konfiguracjฤ GeckoDriver za pomocฤ klasy DesiredCapabilities.
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
Oto peลny kod:
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
2. Korzystanie MariNieruchomoลฤ onette
GeckoDriver moลผna rรณwnieลผ zainicjowaฤ za pomocฤ wลaลciwoลci marionette, jak pokazano poniลผej.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Jeลli GeckoDriver zostanie zainicjowany za pomocฤ powyลผszej metody, kod Desired Capabilities bฤdzie nie wymagane.
3. Korzystanie FirefoxOpcje
Mozilla Firefox wersja 47+ ujawnia Maristerownik onette jako starszy system. Korzystajฤ c z tego, Maristerownik onette moลผna wywoลaฤ przez Firefox Opcje pokazane poniลผej.
FirefoxOptions options = new FirefoxOptions();
options.setLegacy(true);
Code do uruchomienia Firefox Korzystanie z GeckoDriver
Poniลผszy JUnit-przykลad pokazuje kompletny, moลผliwy do uruchomienia Selenium test, ktรณry uruchamia Firefox przez GeckoDriver i przechodzi do wersji demonstracyjnej URL.
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();
}
}
Code Wyjaลnienie
@Przed metodฤ
Poczฤ tkowo ustawiliลmy wลaลciwoลฤ systemowฤ dla GeckoDriver na lokalizacjฤ pobierania pliku geckodriver.exe. Ustawiliลmy rรณwnieลผ wลaลciwoลฤ marionette na true, wiฤc Selenium uลผywa MariProtokรณล onette do komunikacji z GeckoDriver. Na koniec uruchamiamy Firefox wystฤ pienie przeglฤ darki przy uลผyciu obiektu Desired Capabilities.
Poniลผsze instrukcje realizujฤ tฤ konfiguracjฤ.
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
@Metoda badania
Przechodzimy do wskazanego przez uลผytkownika URL uลผywajฤ
c wbudowanego get metoda dostarczona przez Selenium WebDriver, jak pokazano poniลผej.
driver.get("https://demo.guru99.com/selenium/guru99home/");
@Po metodzie
Na koniec zamykamy instancjฤ przeglฤ
darki za pomocฤ
quit Metoda.
driver.quit();
Modyfikacja skryptu dla jฤzyka innego niลผ Gecko na Gecko
Skrypty Non-GeckoDriver uลผywane wczeลniej Selenium 3 byลy proste. Po prostu utworzyลeล instancjฤ Firefox sterownik i uลผyล zmiennej instancji.
@Before
public void startBrowser() {
driver = new FirefoxDriver();
}
Aby przekonwertowaฤ skrypt dla GeckoDriver, wystarczy dodaฤ jednฤ linijkฤ kodu wskazujฤ cฤ na lokalizacjฤ geckodriver.exe.
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe");
driver = new FirefoxDriver();
}
Podczas korzystania z GeckoDriver wystฤ piลy typowe wyjฤ tki
Poniลผej znajduje siฤ lista typowych wyjฤ tkรณw wystฤpujฤ cych podczas korzystania z GeckoDriver wraz ze sposobami ich rozwiฤ zania.



