從 Nightwatch v1.x 遷移

以下是 2.0 版中潛在的重大變更以及已移除的已棄用功能清單。我們已盡一切努力確保清單的完整性和準確性,但可能會有我們遺漏的地方。

我們已盡力將重大變更的數量降至最低,但有些變更是難以避免的。

使用 ES6 async/await

當使用 ES6 async/await 測試案例時,Nightwatch 指令的結果值不再包含 statusvalue 屬性,而僅包含 value (這可以透過將 nightwatch 設定中的 backwards_compatibility_mode 設定為 true 來還原)。

元素定位錯誤

結果物件中的變更

  • 包含一個 error 屬性,該屬性是 Error 物件實例
  • 不再包含 httpStatusCode 屬性
  • 不再包含 value 屬性

相依性

  • 移除了 proxy-agent 作為相依性,因為它經常導致相依性問題;可以從 NPM 單獨安裝 proxy-agent 套件並以相同的方式使用。

其他

  • 從 CLI Runner 中移除了 .startWebDriver() / .stopWebDriver(),因為 Webdriver 服務現在由 selenium-webdriver 管理。請參閱 https://github.com/nightwatchjs/nightwatch/issues/2918
  • 移除設定 webdriver.use_legacy_jsonwire
  • 從主要用戶端實例中移除事件 nightwatch:finished
  • 不再可能將 Nightwatch 與 Webdriver.io 一起使用,如 此處 所宣傳的那樣。