Geckodriver 다운로드: 설치 방법 Firefox 용 드라이버 Selenium
GeckoDriver란 무엇인가요? Selenium?
Gecko라는 용어는 Mozilla에 내장된 웹 브라우저 엔진을 나타냅니다. Firefox 브라우저. Gecko 드라이버는 웹 드라이버가 활성화된 클라이언트 간의 프록시 역할을 합니다.Eclipse, Netbeans 등) 및 Mozilla Firefox 브라우저. 간단히 말해서 Gecko 드라이버는 다음 사이의 링크 역할을 합니다. Selenium 웹 드라이버 테스트 및 Mozilla Firefox 브라우저.
전 Selenium 3, 모질라 Firefox 브라우저는 기본 브라우저였습니다. Selenium. 후 Selenium 3, 테스터는 사용할 스크립트를 초기화해야 합니다. Firefox GeckoDriver를 명시적으로 사용합니다. Selenium W3C Webdriver 프로토콜을 사용하여 GeckoDriver에 요청을 보내고 GeckoDriver는 해당 요청을 Mari오네트. Firefox 다음과 같은 형태로 전송되는 명령을 이해합니다. Marionette 프로토콜을 작성하고 실행합니다.
GeckoDriver를 다운로드하고 설치하는 방법 Selenium
Gecko Driver는 시스템에 다운로드할 수 있는 실행 파일로 제공됩니다. 다음은 Gecko Driver를 다운로드하는 단계 목록입니다.
1 단계 ) 적절한 버전을 선택하세요.
이 페이지에서 https://github.com/mozilla/geckodriver/releases ,운영 체제에 따라 GeckoDriver 다운로드에 적합한 버전을 선택하세요
단계 2) ZIP 파일의 압축을 풉니다.
ZIP 파일 다운로드가 완료되면 ZIP 파일의 내용을 파일 폴더에 추출합니다.
단계 3) 위치를 참고하세요.
드라이버를 추출한 위치를 기록해 두세요. 위치는 나중에 드라이버를 인스턴스화하는 데 사용됩니다.
GeckoDriver를 초기화하는 방법
GeckoDriver를 초기화하는 방법에는 세 가지가 있습니다.
1. DesiredCapability 사용
먼저 Gecko Driver의 시스템 속성을 설정합니다.
구문 :
System.setProperty("webdriver.gecko.driver","Path to geckdriver.exe file");
예:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
다음으로 원하는 기능을 설정합니다.
원하는 기능 도움말 Selenium 자동화된 테스트를 실행하기 위해 브라우저 이름, 버전 및 운영 체제를 이해합니다. 아래는 DesiredCapabilities 클래스를 사용하여 Gecko 드라이버를 설정하는 코드입니다.
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. 마리오네트 속성 사용하기
Gecko 드라이버는 아래와 같이 marionette 속성을 사용하여 초기화할 수도 있습니다.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
위의 방법을 사용하여 gecko 드라이버를 초기화하면 원하는 기능에 대한 코드는 다음과 같습니다. 지원 이 필요합니다.
3. 사용 Firefox옵션
모질라 Firefox 버전 47+에는 레거시 시스템으로 marionette 드라이버가 있습니다. 이를 활용하여 marionette 드라이버를 호출할 수 있습니다. Firefox 아래와 같은 옵션
FirefoxOptions options = new FirefoxOptions(); options.setLegacy(true);
Gecko 드라이버를 사용하여 Firefox를 시작하기 위한 코드
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(); } }
코드 설명
@Before 메소드
처음에는 gecko 드라이버의 시스템 속성을 geckdriver.exe 파일 다운로드 위치로 설정해야 합니다. marionette 속성을 true로 설정해야 합니다. Selenium 사용 MariGecko Driver와 통신하기 위한 onette 프로토콜입니다. 마지막으로 우리는 다음 작업을 시작해야 합니다. Firefox 원하는 기능에 대한 객체를 사용하는 브라우저 인스턴스입니다.
아래 설명은 위 작업을 달성하는 데 도움이 됩니다.
System.setProperty("webdriver.gecko.driver", driverPath); DesiredCapabilities capabilities = DesiredCapabilities.firefox(); capabilities.setCapability("marionette",true); driver= new FirefoxDriver(capabilities);
@시험 방법
우리는 내장된 "get" 메소드를 사용하여 사용자가 지정한 URL로 이동합니다. Selenium 웹 드라이버. 아래 진술은 동일한 결과를 얻는 데 도움이 됩니다.
driver.get("http://demo.guru99.com/selenium/guru99home/");
@After 메소드
마지막으로 quit 메소드를 사용하여 브라우저 인스턴스를 닫습니다.
driver.quit();
non-Gecko에 대한 스크립트를 Gecko로 수정
이전에 사용된 Non-gecko 드라이버 스크립트 Selenium 3은 간단했다. 우리는 다음의 인스턴스를 생성해야 합니다. Firefox 드라이버를 설치하고 인스턴스 변수를 사용하세요.
@Before public void startBrowser() { driver = new FirefoxDriver(); }
gecko로 변환하려면 코드 한 줄만 추가하면 됩니다.
@Before public void startBrowser() { System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe"); driver = new FirefoxDriver(); }
Gecko Driver를 사용하는 동안 일반적인 예외가 발생했습니다.
다음은 Gecko Driver를 사용하는 동안 발생하는 일반적인 예외 목록과 해결 방법입니다.
Gecko Driver 사용의 장점
Selenium Webdriver 버전 2.53은 Mozilla와 호환되지 않습니다. Firefox 버전 47.0+. 그만큼 Firefox 이전 버전의 Mozilla에서 사용된 드라이버 Firefox 중단될 예정이며 GeckoDriver 구현만 사용됩니다. 따라서 테스터는 Mozilla에서 자동화된 테스트를 실행하려는 경우 GeckoDriver를 사용해야 합니다. Firefox 버전 47.0+. 그러나 가장 큰 질문은 – 장점이 무엇입니까?
기본값과 달리 GeckoDriver를 사용하는 주요 이점 Firefox 운전사는 호환성. GeckoDriver는 다음을 사용합니다. W3C WebDriver 프로토콜 와 소통하다 Selenium. W3C는 웹 드라이버에 대해 보편적으로 정의된 표준입니다. 이는 다음을 의미합니다. Selenium 개발자(코딩하는 사람들 Selenium 기본) 각 브라우저 버전에 대해 새 버전의 Web Driver를 만들 필요가 없습니다. 여러 브라우저 버전에 동일한 웹 드라이버를 사용할 수 있습니다. 따라서 GeckoDriver는 이전 구현에 비해 선호됩니다. Firefox 운전사.