什么是 Selenium WebDriver 架构?


Selenium WebDriver 架构的简化图如下所示

现在让我们了解 Selenium WebDriver 架构。Selenium WebDriver API 实现了浏览器和浏览器驱动程序之间的交互。此架构包含四个层,即 Selenium 客户端库、JSON Wire 协议、浏览器驱动程序和浏览器。

  • Selenium 客户端库包含 Java、Ruby、Python、C# 等语言。测试用例触发后,整个 Selenium 代码将转换为 JSON 格式。

  • JSON 代表 JavaScript 对象表示法。它承担了将信息从服务器传输到客户端的任务。JSON Wire 协议主要负责在 HTTP 服务器之间传输数据。生成的 JSON 通过 HTTP 协议提供给浏览器驱动程序。

  • 每个浏览器都有一个特定的浏览器驱动程序。浏览器驱动程序与其各自的浏览器交互,并通过解释从浏览器接收到的 JSON 来执行命令。浏览器驱动程序一旦获得任何指令,就会在浏览器上运行它们。然后,响应将以 HTTP 响应的形式返回。

让我们考虑以下代码块:

WebDriver driver = new ChromeDriver();
driver.get (“https://tutorialspoint.com/index.htm“);

一旦我们运行此代码块,整个代码将借助 HTTP 上的 JSON Wire 协议转换为 URL。转换后的 URL 将被馈送到 ChromeDriver。

浏览器驱动程序利用 HTTP 服务器从 HTTP 获取请求。当浏览器驱动程序获取 URL 时,它通过 HTTP 将请求传递给其浏览器。它将触发在浏览器上执行 Selenium 指令的事件。

现在,如果请求是 POST 请求,它将在浏览器上触发一个操作。如果是 GET 请求,则响应将在浏览器端生成。最后,它将通过 HTTP 传递给浏览器驱动程序。浏览器驱动程序将依次通过 JSON Wire 协议将其发送到 UI。

这总结了 Selenium WebDriver 架构的总体解释。

更新于:2020年6月10日

浏览量:9000+

启动您的 职业生涯

通过完成课程获得认证

开始学习
广告