WebDriver BiDi 日誌功能
這些功能與日誌記錄相關。由於「日誌記錄」可以指代許多不同的事物,因此這些方法透過「script」命名空間提供。
雙向意味著通訊同時在兩個方向發生。傳統的 WebDriver 模型涉及嚴格的請求/回應命令,這僅允許在任何給定時間在一個方向上發生通訊。在大多數情況下,這正是您想要的;它可以確保瀏覽器以正確的順序執行預期的操作,但是透過非同步互動可以完成許多有趣的事情。
此功能目前以有限的方式透過 [Chrome DevTools Protocol] (CDP) 提供,但為了解決其一些缺點,Selenium 團隊與主要的瀏覽器供應商合作創建了新的 WebDriver BiDi 協議。此規範旨在創建一個穩定的跨瀏覽器 API,利用雙向通訊來增強瀏覽器自動化和測試功能,包括透過 WebSockets 將事件從使用者代理串流傳輸到控制軟體。使用者將能夠在 Selenium 會議期間監聽、記錄或操作發生的事件。
為了使用 WebDriver BiDi,在瀏覽器選項中設定 capabilities 將啟用所需的功能
options.setCapability("webSocketUrl", true);
options.enable_bidi = True
UseWebSocketUrl = true,
options.web_socket_url = true
Options().enableBidi();
options.setCapability("webSocketUrl", true);
這將啟用 WebSocket 連線以進行雙向通訊,從而釋放 WebDriver BiDi 協議的全部潛力。
請注意,Selenium 正在將其整個實作從 WebDriver Classic 更新到 WebDriver BiDi(同時盡可能保持向後相容性),但本文件章節重點介紹雙向通訊允許的新功能。低階 BiDi 網域將可在程式碼中供終端使用者存取,但目標是提供高階 API,這些 API 是實際使用案例的直接方法。因此,低階組件將不會被記錄,本節將僅關注我們鼓勵使用者利用的友善使用者功能。
如果您希望看到其他功能,請提出功能請求。
這些功能與日誌記錄相關。由於「日誌記錄」可以指代許多不同的事物,因此這些方法透過「script」命名空間提供。
這些功能與網路相關,並透過「network」命名空間提供。
這些功能與腳本相關,並透過「script」命名空間提供。
在 Selenium 中使用 Chrome DevTools Protocol 的範例。在 WebDriver BiDi 實作之前,CDP 支援是暫時的。
在 Selenium 中使用 Chrome DevTools Protocol 的範例。在 WebDriver BiDi 實作之前,CDP 支援是暫時的。
了解更多或查看完整的贊助商列表。