Selenium WebDriver - 在 Firefox 浏览器上运行测试 - Gecko (Marionette) Driver

2024年11月16日 | 阅读3分钟

在本节中,我们将学习如何在 Firefox 浏览器上运行 Selenium 测试脚本。

在继续本节之前,让我们首先了解 Gecko Driver 的基础知识。

什么是 Gecko Driver?

术语 Gecko 指的是 Gecko 浏览器引擎,该引擎由 Mozilla 基金会开发,是 Mozilla 浏览器的一部分。

Gecko Driver 充当 Selenium 中的测试与 Firefox 浏览器之间的链接。它充当 W3C WebDriver 兼容客户端(Eclipse、Netbeans 等)与基于 Gecko 的浏览器(Mozilla Firefox)交互的代理。

从 Selenium 3 开始,默认情况下启用 Marionette(下一代 FirefoxDriver)。 Selenium 使用 W3C Webdriver 协议向 GeckoDriver 发送请求,后者将其转换为名为 Marionette 的协议。 即使您使用的是旧版本的 Firefox 浏览器,Selenium 3 也希望您通过 webdriver.gecko.driver 设置驱动程序可执行文件的路径。

注意:Selenium 3 已将其自身升级为现在使用 Marionette 驱动程序启动 Firefox 驱动程序,而不是早期支持的默认初始化。

让我们考虑一个测试用例,其中我们将尝试自动化 Firefox 浏览器中的以下场景。

  • 启动 Firefox 浏览器。
  • 打开 URL:www.javatpoint.com
  • 点击自定义搜索文本框
  • 输入值“Java”
  • 单击“搜索”按钮。

我们将在同一个测试套件 (Demo_Test) 中创建我们的第二个测试用例。

步骤 1. 右键单击“src”文件夹,然后从新建 > 类创建一个新的类文件。

将您的类命名为“Second”,然后单击“完成”按钮。


Selenium WebDriver Running test on Firefox Browser Gecko Driver
Selenium WebDriver Running test on Firefox Browser Gecko Driver

步骤 2. 在浏览器中打开 URL:https://github.com/mozilla/geckodriver/releases,然后根据您当前使用的操作系统,单击相应的 GeckoDriver 下载版本。 在这里,我们下载的是适用于 Windows 的 GeckoDriver 64 位版本。


Selenium WebDriver Running test on Firefox Browser Gecko Driver

下载的文件将采用压缩格式。 将内容解压缩到方便的目录中。


Selenium WebDriver Running test on Firefox Browser Gecko Driver

在编写测试脚本之前,让我们首先了解如何在 Selenium 中初始化 GeckoDriver。 有三种初始化 GeckoDriver 的方法

1. 使用所需的参数 (Desired Capabilities)

首先,我们必须设置 Gecko Driver 的系统属性。

以下是使用 DesiredCapabilities 类设置 gecko 驱动程序的代码。

这是完整的代码

2. 使用木偶 (marionette) 属性

也可以使用木偶 (marionette) 属性初始化 Gecko Driver。

此方法不需要 Desired Capabilities 的代码。

3. 使用 Firefox 选项

Firefox 47 或更高版本具有作为旧系统的木偶驱动程序。 因此,可以使用 Firefox 选项调用木偶驱动程序,如下所示。

步骤 3. 现在是编码的时候了。 我们为每个代码块嵌入了注释,以清楚地解释这些步骤。

Eclipse 代码窗口将如下所示


Selenium WebDriver Running test on Firefox Browser Gecko Driver

步骤 4. 右键单击 Eclipse 代码,然后选择Run As > Java Application


Selenium WebDriver Running test on Firefox Browser Gecko Driver

步骤 5. 上述测试脚本的输出将显示在 Firefox 浏览器中。


Selenium WebDriver Running test on Firefox Browser Gecko Driver 下一个主题Selenium webdriver 在 IE 浏览器上运行测试