Töltse le a Geckodriver programot Firefox & Selenium
Miben van a GeckoDriver? Selenium?
A Gecko kifejezés a Mozillába beépített webböngésző motort jelent Firefox böngésző. A Gecko illesztőprogram proxyként működik a Web Driver-kompatibilis kliensek között (Eclipse, Netbeans stb.) és a Mozilla Firefox böngésző. Röviden, a Gecko illesztőprogram összekötőként működik Selenium Web Driver tesztek és Mozilla Firefox böngészőt.
Előtt Selenium 3, Mozilla Firefox böngésző volt az alapértelmezett böngésző Selenium. Után Selenium 3, tesztelők kell inicializálni a szkriptet használni Firefox kifejezetten a GeckoDriver használatával. Selenium a W3C Webdriver protokollt használja a kérések elküldésére a GeckoDrivernek, amely lefordítja azokat egy nevű protokollra Marionette. Firefox formájában továbbított parancsokat fogja érteni Marionette protokollt, és végrehajtja azokat.
A GeckoDriver letöltése és telepítése Selenium
A Gecko Driver végrehajtható fájlként érhető el, amely letölthető a rendszerre. Az alábbiakban felsoroljuk a gecko illesztőprogram letöltésének lépéseit.
1. lépés) Válassza ki a megfelelő verziót.
Ezen az oldalon https://github.com/mozilla/geckodriver/releases ,Válassza ki a megfelelő verziót a GeckoDriver letöltéséhez az operációs rendszere alapján
Step 2) Bontsa ki a ZIP fájlt.
Miután a ZIP fájl letöltése befejeződött, csomagolja ki a ZIP fájl tartalmát egy fájlmappába
Step 3) Jegyezze fel a helyet.
Jegyezze fel azt a helyet, ahol kicsomagolta az illesztőprogramot. A helyadatokat később az illesztőprogram példányosításához használjuk fel.
A GeckoDriver inicializálásának módjai
A GeckoDriver inicializálásának három különböző módja van.
1. A DesiredCapabilities használata
Először állítsa be a Gecko Driver rendszertulajdonságát.
Syntax:
System.setProperty("webdriver.gecko.driver","Path to geckdriver.exe file");
Példa:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Ezután állítsa be a kívánt képességeket.
A kívánt képességek segítenek Selenium a böngésző nevének, verziójának és operációs rendszerének megértése az automatizált tesztek végrehajtásához. Az alábbiakban található a gecko illesztőprogram DesiredCapabilities osztály használatával történő beállításához szükséges kód.
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
Itt a teljes kód
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver= new FirefoxDriver(capabilities);
2. Marionett tulajdonság használata
A Gecko illesztőprogramja a marionette tulajdonság használatával is inicializálható az alábbiak szerint
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Ha a gecko illesztőprogramot a fenti módszerrel inicializálják, akkor a kívánt képességek kódja az nem szükséges.
3. használata FirefoxOpciók
Mozilla Firefox A 47-es verzióban a marionette illesztőprogram örökölt rendszere. Ezt kihasználva a marionette driver segítségével hívható Firefox Lehetőségek az alábbiak szerint
FirefoxOptions options = new FirefoxOptions(); options.setLegacy(true);
Kód a firefox indításához a Gecko illesztőprogram segítségével
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();
}
}
Kód Magyarázat
@Before módszer
Kezdetben a gecko driver rendszertulajdonságát a geckdriver.exe fájl letöltési helyére kell beállítanunk. A marionette tulajdonságot true értékre kell állítanunk Selenium használata Marionette protokoll a Gecko Driverrel való kommunikációhoz. Végül el kell kezdenünk a Firefox böngészőpéldány a kívánt képességek objektum használatával.
Az alábbi állítások segítenek a fenti feladat megvalósításában.
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver= new FirefoxDriver(capabilities);
@Teszt módszer
A felhasználó által megadott URL-re navigálunk a beépített „get” metódus használatával Selenium web-illesztőprogram. Az alábbi állítás segít ennek elérésében.
driver.get("https://demo.guru99.com/selenium/guru99home/");
@After metódus
Végül bezárjuk a böngészőpéldányt a quit metódussal.
driver.quit();
Módosítson egy szkriptet nem Gecko-hoz Gecko-ra
Korábban használt nem-gecko illesztőprogram-szkript Selenium 3 egyértelmű volt. Létre kell hoznunk egy példányt Firefox illesztőprogramot, és használja a példányváltozót.
@Before
public void startBrowser() {
driver = new FirefoxDriver();
}
A gekkóvá alakításhoz egyszerűen hozzá kell adnia egy kódsort
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe");
driver = new FirefoxDriver();
}
Gyakori kivételek fordultak elő a Gecko Driver használata során
Az alábbiakban felsoroljuk azokat a gyakori kivételeket, amelyek a Gecko Driver használata és a felbontás használata során fordulnak elő.
A Gecko Driver használatának előnye
Selenium A Webdriver 2.53-as verziója nem kompatibilis a Mozillával Firefox 47.0+ verzió. A Firefox a Mozilla korábbi verzióiban használt illesztőprogram Firefox megszűnik, és csak a GeckoDriver implementációt használnák. Ezért a tesztelők kénytelenek GeckoDriver-t használni, ha automatizált teszteket akarnak futtatni a Mozillán Firefox 47.0+ verzió. De a nagy kérdés: mi az előnye?
A GeckoDriver használatának fő előnye az alapértelmezetthez képest Firefox sofőr az Kompatibilitás. GeckoDriver használja W3C WebDriver protokoll kommunikálni Selenium. A W3C a Web Driver univerzálisan meghatározott szabványa. Ez azt jelenti, hogy Selenium Fejlesztők (azok, akik kódolnak Selenium alap) nem kell új Web Driver verziót létrehozni minden böngészőverzióhoz. Ugyanaz a web-illesztőprogram több böngészőverzióhoz is használható. Ezért a GeckoDriver előnyben részesített a korábbi megvalósításhoz képest Firefox sofőr.




