Selenium WebDriver架構


Selenium WebDriver API提供程式設計語言和瀏覽器之間的通訊工具。下圖顯示了Selenium WebDriver的體系結構表示。

WebDriver架構有四個基本元件:

  • Selenium語言系結
  • JSON有線協定
  • 瀏覽器驅動
  • 真正的瀏覽器

以下是上述元件的詳細描述。

1. Selenium語言系結/Selenium用戶端庫

Selenium開發人員已經構建了語言系結/Selenium用戶端庫以支援多種語言。 例如,如果要在java中使用瀏覽器驅動程式,請使用java系結。 所有受支援的語言系結都可以從Selenium的官方網站( https://www.seleniumhq.org/download/ )下載。

2. JSON有線協定

JSON(JavaScript Object Notation)是一種用於在Web上交換資料的開放標準。 它支援物件和陣列等資料結構。 因此,從JSON編寫和讀取資料很容易。 要了解有關JSON的更多資訊,請存取 - /6/69/2180.html

JSON Wire Protocol提供了一種在伺服器和用戶端之間傳輸資料的傳輸機制。 JSON Wire Protocol是各種REST Web服務的行業標準。

3. 瀏覽器驅動

Selenium使用特定於每個瀏覽器的驅動程式,以便與瀏覽器建立安全連線,而不會洩露瀏覽器功能的內部邏輯。 瀏覽器驅動程式也特定於用於自動化的語言,如Java,C#等。
當使用WebDriver執行測試指令碼時,將在內部執行以下操作。

  • 生成HTTP請求並將其傳送到每個Selenium命令的瀏覽器驅動程式。
  • 驅動程式通過HTTP伺服器接收HTTP請求。
  • HTTP Server決定執行在瀏覽器上執行的指令的所有步驟。
  • 執行狀態將傳送回HTTP Server,隨後將其傳送回自動化指令碼。

4. 瀏覽器

Selenium WebDriver支援的瀏覽器:

  • Internet Explorer
  • Mozilla Firefox
  • Google Chrome
  • Safari