Selenium WebDriver - 导航命令

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

WebDriver 提供了一些基本的浏览器导航命令,这些命令允许浏览器在浏览器的历史记录中向后或向前移动。

就像 WebDriver 提供的浏览器方法一样,我们也可以通过在 Eclipse 面板中键入 driver.navigate() 来访问 WebDriver 提供的导航方法。

Selenium WebDriver - Navigation Commands

注意:以“导航”为关键字的方法被声明为导航命令。

以下是 Selenium WebDriver 中一些最常用的浏览器导航命令。

1. 导航到命令

方法

在 WebDriver 中,此方法在现有的浏览器窗口中加载一个新的网页。 它接受*String*作为参数,并返回*void*。

加载/导航新网页的相应命令可以写成

注意:get 命令 (driver.get(URL);) 位于浏览器命令部分,其功能与导航命令相同

2. 前进命令

方法

在 WebDriver 中,此方法使 Web 浏览器能够单击现有浏览器窗口中的**前进**按钮。它既不接受任何东西,也不返回任何东西。

在浏览器的历史记录中向前翻一页的相应命令可以写成

3. 后退命令

方法

在 WebDriver 中,此方法使 Web 浏览器能够单击现有浏览器窗口中的**后退**按钮。它既不接受任何东西,也不返回任何东西。

在浏览器的历史记录中向后退一页的相应命令可以写成

4. 刷新命令

方法

在 WebDriver 中,此方法刷新/重新加载现有浏览器窗口中的当前网页。它既不接受任何东西,也不返回任何东西。

在浏览器的历史记录中向后退一页的相应命令可以写成

让我们考虑一个示例测试脚本,它将涵盖 WebDriver 提供的大部分导航命令。

在此示例测试中,我们将自动化以下测试场景

  • 启动 Firefox 浏览器
  • 导航到 URL:https://www.testandquiz.com/selenium/testing.html
  • 单击“This is a link”链接(此链接将重定向到 javaTpoint 网站)
  • 使用**后退**命令返回到主页
  • 再次使用**前进**命令返回到 javaTpoint 网站
  • 再次使用**To**命令返回到主页
  • 使用**刷新**命令刷新浏览器
  • 关闭浏览器

为了我们的测试目的,我们正在使用 URL 下的一个虚拟网页

https://www.testandquiz.com/selenium/testing.html(您也可以将此虚拟网页用于您的 Selenium 测试实践)

  • **步骤 1.** 启动 Eclipse IDE 并在 WebDriver 安装部分中创建的现有测试套件“Demo_Test”打开 WebDriver 教程。
  • **步骤 2.** 右键单击“src”文件夹,然后从**新建 > 类**中创建一个新的类文件。
Selenium WebDriver - Navigation Commands

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

Selenium WebDriver - Navigation Commands

步骤3. 让我们进入编码环节。

  • 要调用 Firefox 浏览器,我们需要下载 Gecko 驱动程序并为 Gecko 驱动程序设置系统属性。

以下是为 Gecko 驱动程序设置系统属性的示例代码

之后,我们必须使用 Desired Capabilities 类初始化 Gecko 驱动程序。

以下是使用 DesiredCapabilities 类初始化 gecko 驱动程序的示例代码。

结合以上两个代码块,我们将获得启动 Firefox 浏览器的代码段。

  • 之后,我们需要编写代码来自动化我们的第二个测试场景(获取所需的 URL)

以下是导航到所需 URL 的示例代码

  • 要自动化我们的第三个测试场景,首先我们必须唯一地标识虚拟测试页面上的“This is a link”链接。

查找唯一标识元素的方法涉及检查 HTML 代码。

  1. 在您的 Firefox 浏览器中打开 URL:https://www.testandquiz.com/selenium/testing.html。
  2. 右键单击“This is a link”链接文本,然后选择检查元素。
Selenium WebDriver - Navigation Commands

它将启动一个窗口,其中包含参与“This is a link”链接开发的特定代码。 从检查器文本框中选择链接文本的名称。

Selenium WebDriver - Navigation Commands

通过其链接文本唯一标识 Web 元素的 Java 语法如下所示

因此,为了在示例网页上定位链接文本,我们将使用其链接文本的值

现在,我们需要编写代码来单击链接文本。

这是单击链接文本的示例代码。

单击后,链接会将浏览器窗口重定向到 javaTpoint 网站的官方网页。

  • 为了自动化我们的第四个测试场景,我们必须撤销我们的第三个测试场景执行的操作。 为此,我们将使用**后退**命令来撤消在单击链接文本上执行的操作。

以下是在重定向到 javaTpoint 网站后返回主页的示例代码。

  • 现在,下一个测试场景要求我们再次执行我们的第三个测试场景执行的操作,即窗口将再次重定向到 javaTpoint 网站。

以下是再次前进到 javaTpoint 网站的官方网页的示例代码。

  • 现在,为了自动化我们的第六个测试场景,我们将需要再次使用**To 命令**导航到虚拟网站的主页。

以下是返回主页的示例代码。

  • 要刷新浏览器窗口,请使用**刷新命令**如下
  • 最后,给定的代码片段将终止该过程并关闭浏览器。

将以上所有代码块组合在一起,我们将获得执行测试脚本“Navigation_command”所需的源代码。

最终的测试脚本将类似于这样

(我们在每个部分都嵌入了注释,以清楚地解释这些步骤)

要在 Eclipse 窗口上运行测试脚本,请右键单击屏幕,然后单击

运行方式 → Java 应用程序

Selenium WebDriver - Navigation Commands

执行后,测试脚本将启动 Firefox 浏览器并自动化所有测试场景。