Selenium Manager 0.4.15 的新功能

Selenium Manager 0.4.15 隨 Selenium 4.15.0 一起發布。這篇部落格文章總結了這個新版本中引入的新功能。

Firefox ESR 支援

Selenium Manager 0.4.15 包含對 Firefox 擴展支援版本 (ESR) 的支援。透過這種方式,可以使用 Selenium 自動管理 Firefox ESR,方法是在瀏覽器版本中使用標籤 esr。繫結語言使用名為 browserVersion 的瀏覽器選項來設定此瀏覽器版本(如同其他接受的瀏覽器版本標籤,例如 stablebetadevcanarynightly)。

Edge WebView2 支援

Selenium Manager 0.4.15 允許自動化管理 Microsoft Edge WebView2 的驅動程式。WebView2 是一種元件,可讓您在原生應用程式中嵌入 Web 技術(HTML、CSS 和 JavaScript),並使用 Microsoft Edge 作為渲染引擎來顯示 Web 內容。在撰寫本文時,WebView2 在 Windows 中可用。

透過這種方式,Selenium Manager 允許偵測 Windows 機器中的 WebView2,並為其解析正確的 msedgedriver 二進位檔。在內部,Selenium Manager 使用瀏覽器名稱 webview2 來處理 WebView2,並根據 登錄查詢 偵測其版本。在繫結中,WebView2 是透過名為 useWebView 的瀏覽器選項啟用的。

鏡像儲存庫支援

Selenium Manager 0.4.15 在 Selenium Manager 中包含幾個新引數,用於指定驅動程式和瀏覽器的自訂 URL(而不是預設的 URL,例如 chromedriverChrome for Testing 等)。這些引數是

  • --driver-mirror-url:驅動程式儲存庫的鏡像 URL。
  • --browser-mirror-url:瀏覽器儲存庫的鏡像 URL。

與往常一樣,這些值可以使用組態檔或環境變數來設定(例如,SE_DRIVER_MIRROR_URLSE_BROWSER_MIRROR_URL)。此外,還有瀏覽器和驅動程式特定的組態金鑰,即 chrome-mirror-urlfirefox-mirror-urledge-mirror-url 等(在組態檔中),以及 SE_CHROME_MIRROR_URLSE_FIREFOX_MIRROR_URLSE_EDGE_MIRROR_URL 等(作為環境變數)。

以下是從 shell 呼叫 Selenium Manager 的此功能範例

./selenium-manager --debug --browser chrome --browser-version 100 --avoid-browser-download --driver-mirror-url=https://registry.npmmirror.com/-/binary/chromedriver/
DEBUG   chromedriver not found in PATH
DEBUG   chrome detected at C:\Program Files\Google\Chrome\Application\chrome.exe
DEBUG   Running command: wmic datafile where name='C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe' get Version /value
DEBUG   Output: "\r\r\n\r\r\nVersion=117.0.5938.150\r\r\n\r\r\n\r\r\n\r"
DEBUG   Detected browser: chrome 117.0.5938.150
DEBUG   Discovered chrome version (117) different to specified browser version (100)
DEBUG   Required driver: chromedriver 100.0.4896.60
DEBUG   Downloading chromedriver 100.0.4896.60 from https://registry.npmmirror.com/-/binary/chromedriver/100.0.4896.60/chromedriver_win32.zip
INFO    Driver path: C:\Users\boni\.cache\selenium\chromedriver\win64\100.0.4896.60\chromedriver.exe
INFO    Browser path: C:\Program Files\Google\Chrome\Application\chrome.exe

偵錯版本

為了在複雜的錯誤情況下對 Selenium Manager 進行疑難排解,擷取回溯追蹤非常重要。但是要做到這一點,必須使用偵錯符號建立 Selenium Manager 二進位檔。由於具有偵錯符號的結果二進位檔比預設發布成品大得多,因此我們使用 GitHub Actions 中的自訂 工作流程 依需求產生它們。這樣,我們在工作流程中加入了一個核取方塊,用於觸發 Selenium Manager 建置。當在建置 Selenium Manager 時啟用此核取方塊時,偵錯符號將新增至結果二進位檔(適用於 Windows、Linux 和 macOS)。總而言之,這些二進位檔將依需求用於疑難排解複雜問題。

Selenium Manager workflow screenshot

快取中的 Selenium Manager(僅適用於 Java 繫結)

從 Selenium Java 繫結的 4.15.0 版開始,Selenium Manager 二進位檔會被解壓縮並複製到快取資料夾。例如,Selenium 4.15.0 隨附的 Selenium Manager 二進位檔儲存在資料夾 ~/.cache/selenium/manager/0.4.15 中)。此功能將允許直接操作 Selenium Manager 作為 CLI 工具,例如,用於疑難排解。此功能僅適用於 Java 繫結,因為 Java 是唯一無法直接存取 Selenium Manager 二進位檔的語言(因為它們被壓縮發佈到 selenium-java 成品的 JAR 檔案中)。

後續步驟

請參閱 Selenium Manager 文件 以取得其功能的詳細說明。此外,您可以在 Selenium Manager 專案儀表板 中追蹤開發活動的狀態。