自動化協定
使用 WebdriverIO 時,您可以在本地或雲端執行 E2E 測試時,選擇多種自動化技術。預設情況下,WebdriverIO 會嘗試使用 WebDriver Bidi 協定啟動本機自動化工作階段。
WebDriver Bidi 協定
WebDriver Bidi 是一種使用雙向通訊來自動化瀏覽器的自動化協定。它是 WebDriver 協定的後繼者,並為各種測試用例啟用更多檢測功能。
此協定目前正在開發中,未來可能會新增新的基本元素。所有瀏覽器供應商都致力於實作此網路標準,並且許多 基本元素 已在瀏覽器中實現。
WebDriver 協定
WebDriver 是一種遠端控制介面,可讓使用者檢測和控制使用者代理。它提供了一個平台和語言中立的連線協定,讓進程外的程式可以遠端指示網頁瀏覽器的行為。
WebDriver 協定旨在從使用者的角度自動化瀏覽器,這表示使用者能夠執行的所有操作,您都可以透過瀏覽器執行。它提供了一組命令,抽象化了與應用程式的常見互動(例如,導覽、點擊或讀取元素的狀態)。由於它是網路標準,因此所有主要瀏覽器供應商都提供了良好的支援,並且還被用作使用 Appium 進行行動自動化的基礎協定。
若要使用此自動化協定,您需要一個 Proxy 伺服器,將所有命令轉換並在目標環境(即瀏覽器或行動應用程式)中執行。
對於瀏覽器自動化,Proxy 伺服器通常是瀏覽器驅動程式。所有瀏覽器都有可用的驅動程式
- Chrome – ChromeDriver
- Firefox – Geckodriver
- Microsoft Edge – Edge Driver
- Internet Explorer – InternetExplorerDriver
- Safari – SafariDriver
對於任何類型的行動自動化,您都需要安裝並設定 Appium。它可讓您使用相同的 WebdriverIO 設定來自動化行動 (iOS/Android) 甚至桌面 (macOS/Windows) 應用程式。
也有許多服務可讓您以高規模在雲端執行自動化測試。您不必在本機設定所有這些驅動程式,只需在雲端與這些服務(例如 Sauce Labs)通訊,並在其平台上檢查結果即可。測試腳本與自動化環境之間的通訊如下所示