Geckodriver를 다운로드하세요 Firefox & Selenium
⚡ 스마트 요약
GeckoDriver용 Firefox Selenium W3C WebDriver 클라이언트와 Mozilla 사이에서 프록시 역할을 합니다. Firefox명령어를 번역합니다. Marionette 프로토콜. 이 가이드에서는 설치, 초기화 기법, 샘플 코드, 일반적인 예외 및 코어 호환성의 이점에 대해 설명합니다.

GeckoDriver란 무엇인가요? Selenium?
Gecko는 Mozilla에 내장된 웹 브라우저 엔진을 가리키는 용어입니다. Firefox 브라우저. GeckoDriver는 WebDriver를 지원하는 클라이언트(Eclipse, NetBeans, IntelliJ IDEA(등) 및 모질라 Firefox 간단히 말해, GeckoDriver는 브라우저와 브라우저를 연결하는 역할을 합니다. Selenium WebDriver 테스트 및 Mozilla Firefox.
전 Selenium 3, 모질라 Firefox 브라우저는 기본 브라우저였습니다. Selenium. 후 Selenium 3. 테스터는 스크립트를 사용하기 위해 초기화해야 합니다. Firefox GeckoDriver를 통해 명시적으로. Selenium W3C WebDriver 프로토콜을 사용하여 GeckoDriver에 요청을 보내고, GeckoDriver는 이를 라는 이름의 프로토콜로 변환합니다. Mari오네트. Firefox 그러면 명령을 이해합니다. transmit테드 인 더 Marionette 프로토콜 형식을 지정하고 실행합니다.
GeckoDriver 사용의 장점
Selenium WebDriver 버전 2.53은 Mozilla와 호환되지 않습니다. Firefox 버전 47.0 이상. 레거시 Firefox 이전 Mozilla에서 사용되는 드라이버 Firefox 빌드 기능은 더 이상 지원되지 않으며, 현재는 GeckoDriver 구현만 사용할 수 있습니다. 따라서 테스터는 Mozilla에서 자동화된 테스트를 실행하기 위해 GeckoDriver를 사용해야 합니다. Firefox 버전 47.0 이상.
기존 방식 대신 GeckoDriver를 사용하는 가장 큰 장점은 다음과 같습니다. Firefox 운전사는 호환성GeckoDriver는 다음을 기반으로 합니다. W3C WebDriver 프로토콜 와 소통하다 SeleniumW3C는 WebDriver에 대한 보편적으로 정의된 표준입니다. 즉, Selenium 개발자는 브라우저가 출시될 때마다 새로운 드라이버 버전을 만들 필요가 없습니다. 동일한 WebDriver 구현을 여러 브라우저 버전에서 사용할 수 있기 때문에 GeckoDriver가 기존 방식보다 선호됩니다. Firefox 운전사.
GeckoDriver를 다운로드하고 설치하는 방법 Selenium
GeckoDriver는 시스템에 직접 다운로드할 수 있는 실행 파일 형태로 배포됩니다. 아래 단계를 따라 GeckoDriver를 다운로드하고 설치하십시오. Selenium 오토메이션.
단계 1) 적절한 버전을 선택하세요.
공식 출시 페이지에서 https://github.com/mozilla/geckodriver/releases운영 체제 및 아키텍처에 맞는 적절한 GeckoDriver 빌드를 선택하십시오.
단계 2) ExtracZIP 파일입니다.
ZIP 파일 다운로드가 완료되면, 예trac그 내용을 컴퓨터의 폴더에 저장하세요.
단계 3) 운전자의 위치를 확인하세요.
예를 들면 폴더 경로를 기록해 두세요.trac드라이버를 저장합니다. 이 위치는 나중에 테스트 스크립트에서 드라이버를 인스턴스화하는 데 사용됩니다.
GeckoDriver를 초기화하는 방법
GeckoDriver를 초기화하는 방법에는 세 가지가 있습니다. Selenium 테스트 스크립트. 테스트 프레임워크에 가장 적합한 스크립트를 선택하세요. Selenium 번역.
1. DesiredCapability 사용
먼저 GeckoDriver에 대한 시스템 속성을 설정합니다.
구문 :
System.setProperty("webdriver.gecko.driver","Path to geckodriver.exe file");
예:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
다음으로, 원하는 기능을 설정하세요. 원하는 기능은 다음과 같은 도움을 줍니다. Selenium 자동화된 테스트를 실행하는 데 필요한 브라우저 이름, 버전 및 운영 체제를 파악해야 합니다. 아래는 DesiredCapabilities 클래스를 사용하여 GeckoDriver를 구성하는 코드입니다.
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. 사용 Mari오네트 부동산
GeckoDriver는 아래와 같이 marionette 속성을 사용하여 초기화할 수도 있습니다.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
위의 방법을 사용하여 GeckoDriver를 초기화하면 원하는 기능 코드는 다음과 같습니다. 지원 이 필요합니다.
3. 사용 Firefox형식
모질라 Firefox 버전 47 이상에서는 다음 사항이 드러납니다. Marionette 드라이버를 레거시 시스템으로 사용합니다. 이를 활용하여 Marionette 드라이버는 다음을 통해 호출할 수 있습니다. Firefox 아래와 같은 옵션이 있습니다.
FirefoxOptions options = new FirefoxOptions();
options.setLegacy(true);
Code 출시를 위해 Firefox GeckoDriver 사용
다음 JUnit-기반 예제는 완전하고 실행 가능한 예제를 보여줍니다. Selenium 테스트를 시작합니다 Firefox GeckoDriver를 통해 데모 페이지로 이동합니다. 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 설명
@Before 메소드
먼저 GeckoDriver의 시스템 속성을 geckodriver.exe 다운로드 위치로 설정했습니다. 또한 marionette 속성을 true로 설정했습니다. Selenium 를 사용하여 MariGeckoDriver와 통신하기 위한 onette 프로토콜입니다. 마지막으로 시작합니다. Firefox Desired Capabilities 객체를 사용하는 브라우저 인스턴스입니다.
다음 명령문을 사용하면 이러한 설정이 가능합니다.
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
@시험 방법
사용자가 지정한 위치로 이동합니다. URL 붙박이를 사용하여 get 제공하는 방법 Selenium 아래 그림과 같이 WebDriver를 사용합니다.
driver.get("https://demo.guru99.com/selenium/guru99home/");
@After 메소드
마지막으로, 다음을 사용하여 브라우저 인스턴스를 닫습니다. quit 방법.
driver.quit();
Gecko가 아닌 스크립트를 Gecko로 수정하세요
이전에 사용했던 GeckoDriver 이외의 스크립트 Selenium 3번은 간단했습니다. 단순히 인스턴스를 생성하면 됩니다. Firefox 드라이버를 사용하고 인스턴스 변수를 사용했습니다.
@Before
public void startBrowser() {
driver = new FirefoxDriver();
}
GeckoDriver용 스크립트로 변환하려면 geckodriver.exe의 위치를 가리키는 코드 한 줄만 추가하면 됩니다.
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe");
driver = new FirefoxDriver();
}
GeckoDriver 사용 중 발생하는 일반적인 예외 사항
다음은 GeckoDriver 사용 중 발생하는 일반적인 예외 사항과 해결 방법 목록입니다.



