Tải Geckodriver cho Firefox & Selenium
⚡ Tóm tắt thông minh
GeckoDriver cho Firefox và Selenium Đóng vai trò như một máy chủ trung gian giữa các máy khách W3C WebDriver và Mozilla. Firefox, dịch các lệnh thành MariGiao thức Onette. Hướng dẫn này giải thích về cài đặt, kỹ thuật khởi tạo, mã ví dụ, các ngoại lệ thường gặp và lợi thế về khả năng tương thích cốt lõi.

GeckoDriver trong gì Selenium?
Thuật ngữ Gecko dùng để chỉ một công cụ trình duyệt web được tích hợp sẵn trong Mozilla. Firefox trình duyệt. GeckoDriver hoạt động như một máy chủ trung gian giữa các máy khách hỗ trợ WebDriver (Eclipse, NetBeans, IntelliJ IDEA(v.v.) và Mozilla Firefox trình duyệt. Nói tóm lại, GeckoDriver đóng vai trò là cầu nối giữa... Selenium Kiểm thử WebDriver và Mozilla Firefox.
Trước Selenium 3, Mozilla Firefox trình duyệt là trình duyệt mặc định cho Selenium. Sau Selenium 3. Người kiểm thử phải khởi tạo tập lệnh để sử dụng. Firefox Thông qua GeckoDriver một cách rõ ràng. Selenium Sử dụng giao thức W3C WebDriver để gửi yêu cầu đến GeckoDriver, sau đó GeckoDriver sẽ dịch các yêu cầu đó thành một giao thức có tên là Marionette. Firefox sau đó hiểu các lệnh transmitted trong MariĐịnh dạng giao thức Onette và thực thi chúng.
Ưu điểm khi sử dụng GeckoDriver
Selenium Phiên bản WebDriver 2.53 không tương thích với Mozilla. Firefox phiên bản 47.0+. Phiên bản cũ Firefox Trình điều khiển được sử dụng trong Mozilla trước đây Firefox Việc biên dịch bằng trình biên dịch đã bị ngừng và hiện chỉ có thể sử dụng triển khai GeckoDriver. Do đó, người kiểm thử bắt buộc phải sử dụng GeckoDriver để chạy các bài kiểm thử tự động trên Mozilla. Firefox phiên bản 47.0 trở lên.
Ưu điểm chính của việc sử dụng GeckoDriver so với các hệ thống cũ là... Firefox tài xế là khả năng tương thíchGeckoDriver dựa vào... Giao thức W3C WebDriver giao tiếp với SeleniumW3C là một tiêu chuẩn được định nghĩa toàn cầu cho WebDriver. Điều này có nghĩa là Selenium Các nhà phát triển không cần phải tạo phiên bản trình điều khiển mới cho mỗi bản phát hành trình duyệt. Cùng một triển khai WebDriver có thể được sử dụng trên nhiều phiên bản trình duyệt khác nhau, đó là lý do tại sao GeckoDriver được ưa chuộng hơn so với phiên bản cũ hơn. Firefox người lái xe.
Cách tải xuống và cài đặt GeckoDriver trong Selenium
GeckoDriver được phân phối dưới dạng tệp thực thi có thể tải xuống trực tiếp vào hệ thống của bạn. Hãy làm theo các bước bên dưới để tải xuống và cài đặt GeckoDriver cho hệ thống của bạn. Selenium tự động hóa.
Bước 1) Chọn phiên bản phù hợp.
Trên trang phát hành chính thức https://github.com/mozilla/geckodriver/releasesHãy chọn phiên bản GeckoDriver phù hợp với hệ điều hành và kiến trúc máy tính của bạn.
Bước 2) Extractrong tệp ZIP.
Sau khi quá trình tải xuống tệp ZIP hoàn tất, ví dụ:tracSao chép nội dung của nó vào một thư mục trên máy tính của bạn.
Bước 3) Lưu ý vị trí của người lái xe.
Ghi lại đường dẫn thư mục nơi bạn lưu tệp.tracĐã chỉnh sửa trình điều khiển. Vị trí này sẽ được sử dụng sau này để khởi tạo trình điều khiển từ tập lệnh kiểm thử của bạn.
Các cách khởi tạo GeckoDriver
Có ba cách khác nhau để khởi tạo GeckoDriver trong hệ thống của bạn. Selenium Các tập lệnh kiểm thử. Hãy chọn tập lệnh phù hợp nhất với khung kiểm thử của bạn. Selenium phiên bản.
1. Sử dụng khả năng mong muốn
Trước tiên, hãy thiết lập thuộc tính hệ thống cho GeckoDriver.
Cú pháp:
System.setProperty("webdriver.gecko.driver","Path to geckodriver.exe file");
Ví dụ:
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Tiếp theo, hãy thiết lập Khả năng mong muốn. Khả năng mong muốn giúp Selenium Hiểu rõ tên trình duyệt, phiên bản và hệ điều hành cần thiết để thực hiện các bài kiểm tra tự động. Dưới đây là mã để cấu hình GeckoDriver bằng cách sử dụng lớp DesiredCapabilities.
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
Đây là mã hoàn chỉnh:
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
2. Sử dụng MariBất động sản Onette
GeckoDriver cũng có thể được khởi tạo bằng thuộc tính marionette như hình bên dưới.
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
Nếu GeckoDriver được khởi tạo bằng phương pháp trên, mã Khả năng mong muốn sẽ là không yêu cầu.
3. Sử dụng FirefoxTùy chọn
Mozilla Firefox phiên bản 47+ hiển thị MariTrình điều khiển Onette là một hệ thống kế thừa. Tận dụng điều này, MariTrình điều khiển Onette có thể được kích hoạt thông qua Firefox Các tùy chọn như hiển thị bên dưới.
FirefoxOptions options = new FirefoxOptions();
options.setLegacy(true);
Code để ra mắt Firefox Sử dụng GeckoDriver
Sau đây JUnitVí dụ dựa trên mã nguồn này cho thấy một chương trình hoàn chỉnh, có thể chạy được. Selenium bài kiểm tra khởi chạy Firefox thông qua GeckoDriver và điều hướng đến bản demo. 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 Giải thích
@Trước phương pháp
Ban đầu, chúng tôi thiết lập thuộc tính hệ thống cho GeckoDriver thành vị trí tải xuống geckodriver.exe. Chúng tôi cũng thiết lập thuộc tính marionette thành true. Selenium sử dụng MariGiao thức Onette được sử dụng để giao tiếp với GeckoDriver. Cuối cùng, chúng ta bắt đầu... Firefox Phiên bản trình duyệt sử dụng đối tượng Desired Capabilities.
Các câu lệnh sau đây thiết lập cấu hình này.
System.setProperty("webdriver.gecko.driver", driverPath);
DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability("marionette",true);
driver = new FirefoxDriver(capabilities);
@Phương pháp kiểm tra
Chúng tôi điều hướng đến trang do người dùng chỉ định. URL sử dụng tích hợp sẵn get phương pháp được cung cấp bởi Selenium WebDriver, như hình bên dưới.
driver.get("https://demo.guru99.com/selenium/guru99home/");
Phương thức @After
Cuối cùng, chúng ta đóng cửa sổ trình duyệt bằng cách sử dụng lệnh sau: quit phương pháp.
driver.quit();
Chỉnh sửa kịch bản từ Non-Gecko sang Gecko
Các tập lệnh không phải của GeckoDriver được sử dụng trước đây Selenium 3 bước khá đơn giản. Bạn chỉ cần tạo một thể hiện của... Firefox người lái xe và sử dụng biến thể hiện.
@Before
public void startBrowser() {
driver = new FirefoxDriver();
}
Để chuyển đổi tập lệnh cho GeckoDriver, bạn chỉ cần thêm một dòng mã trỏ đến vị trí của tệp geckodriver.exe.
@Before
public void startBrowser() {
System.setProperty("webdriver.gecko.driver", "D:\\Downloads\\GeckoDriver.exe");
driver = new FirefoxDriver();
}
Các lỗi thường gặp xảy ra khi sử dụng GeckoDriver
Dưới đây là danh sách các lỗi thường gặp khi sử dụng GeckoDriver, cùng với cách khắc phục chúng.



