下载 Geckodriver Firefox & Selenium
⚡ 智能摘要
GeckoDriver Firefox 和 Selenium 充当 W3C WebDriver 客户端和 Mozilla 之间的代理 Firefox将命令翻译成 MariOnette 协议。本指南解释了安装、初始化方法、示例代码、常见异常以及核心兼容性优势。

GeckoDriver 是什么 Selenium?
Gecko 指的是 Mozilla 内置的一款网页浏览器引擎。 Firefox 浏览器。GeckoDriver 充当启用 WebDriver 的客户端之间的代理(Eclipse, NetBeans, IntelliJ IDEA等等)和 Mozilla Firefox 浏览器。简而言之,GeckoDriver 充当了浏览器与浏览器之间的连接。 Selenium WebDriver 测试和 Mozilla Firefox.
之前 Selenium 3,Mozilla Firefox 浏览器是 Selenium。 后 Selenium 3、测试人员必须初始化脚本才能使用 Firefox 通过 GeckoDriver 显式调用。 Selenium 它使用 W3C WebDriver 协议向 GeckoDriver 发送请求,GeckoDriver 会将这些请求转换为名为 WebDriver 的协议。 Mari單身詞。 Firefox 然后就能理解这些命令了。 transmit泰德在 Mari遵循 onette 协议格式并执行它们。
使用 GeckoDriver 的优势
Selenium WebDriver 版本 2.53 与 Mozilla 不兼容。 Firefox 版本 47.0+。旧版 Firefox 早期 Mozilla 中使用的驱动程序 Firefox 构建已停止,目前只能使用 GeckoDriver 实现。因此,测试人员必须使用 GeckoDriver 在 Mozilla 上运行自动化测试。 Firefox 47.0版及更高版本。
使用 GeckoDriver 相对于传统驱动的主要优势在于…… Firefox 司机是 兼容性GeckoDriver 依赖于 W3C WebDriver 协议 沟通 SeleniumW3C 是 WebDriver 的通用标准。这意味着 Selenium 开发者无需为每个浏览器版本创建新的驱动程序版本。同一个 WebDriver 实现可以跨多个浏览器版本使用,这也是 GeckoDriver 优于旧版本的原因。 Firefox 驱动程序。
如何在 Selenium
GeckoDriver 以可执行文件的形式分发,可以直接下载到您的系统中。请按照以下步骤下载并安装 GeckoDriver。 Selenium 自动化。
步骤1) 选择适当的版本。
在官方发布页面上 https://github.com/mozilla/geckodriver/releases选择与您的操作系统和架构相匹配的合适的 GeckoDriver 版本。
步骤2) Extract 压缩文件。
ZIP 文件下载完成后,例如trac将其内容保存到您计算机上的一个文件夹中。
步骤3) 注意驾驶员位置。
记录您退出的文件夹路径trac已加载驱动程序。稍后将使用此位置从测试脚本中实例化驱动程序。
初始化 GeckoDriver 的方法
在您的系统中,有三种不同的方法可以初始化 GeckoDriver。 Selenium 测试脚本。选择最适合您的测试框架的脚本。 Selenium 版。
1. 使用 DesiredCapabilities
首先,设置 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奥内特地产
也可以使用 marionette 属性初始化 GeckoDriver,如下所示。
System.setProperty("webdriver.gecko.driver","D:\\Downloads\\GeckoDriver.exe");
如果使用上述方法初始化 GeckoDriver,则所需功能代码为 不会 必需的。
3。 运用 Firefox可选项
Mozilla的 Firefox 版本 47+ 暴露了 Marionette 驱动程序作为传统系统。利用这一点, Mari可以通过以下方式调用 onette 驱动程序 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 使用 Mari使用 onette 协议与 GeckoDriver 通信。最后,我们启动 Firefox 使用所需功能对象的浏览器实例。
以下语句实现了此设置。
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 时可能出现的常见异常情况及其解决方法。



