Selenium 1 和 Selenium 2 的目前狀態

起初有 Se1,而且它很好。但它可以更好 — 以 WebDriver 開始擅長的方式。

起初有 Se1,而且它很好。但它可以更好 — 以 WebDriver 開始擅長的方式。因此,合併這兩個專案的絕妙想法應運而生。

然後混亂開始了。讓我們看看我是否可以透過一個虛構的對話來開始解決其中一些問題,這個對話整合了 Se-user 列表和 #selenium irc 頻道。

Se-RC 1.03 中有一些惱人的錯誤;1.0.4 版本何時發布?

Se-RC 1.0.4 計劃於 2010 年 7 月底左右發布

我聽說謠言說 1.0.4 將是最終版本?

是的。1.0.4 計劃成為最終的 1.x 版本

這太瘋狂了!我不能將 .0 或「alpha」版本用於我的關鍵任務應用程式

實際上,這並非那麼瘋狂 — 而且需要更多解釋。Se2 確實是這兩個專案的合併,事實上 2.0a1 實際上是來自 OpenQA 儲存庫的 Se 程式碼和來自 Google Code 儲存庫的 WebDriver 程式碼合併到一個新的儲存庫。這表示從 2.x 系列的第一個版本開始,它就包含了 100% 的 1.x 程式碼,這表示 100% 的向後相容性。2.x 系列後續版本主要由來自 WebDriver 的程式碼演進驅動,而不是來自 Se 1.x。

好的,所以 100% 的 Se 1.x 在 2.x 中;我明白了。但是您如何確保對一個的修復程式碼進入另一個?

這裡還有另一個「秘密」 — 不要告訴任何人,但自程式碼庫合併以來,就沒有任何純粹的 1.x 開發。自合併以來,每個 1.x 版本實際上都是 2.x 版本 — 但所有版本都打包在一起,使其看起來像 1.x 版本。這就是為什麼細心的人會注意到類似 11:09:37.507 INFO – v2.0 [a4], with Core v2.0 [a4] 的日誌訊息,當他們啟動 1.x 伺服器時。

所以您一直在發布偽裝成穩定版本的 alpha 程式碼?混蛋!

哇!放鬆!回想一下我上面說的關於預設向後相容性的內容。「alpha」標籤在那裡是因為新程式碼的 API 仍在開發中,並且功能已充實。但是,1.x 程式碼仍然穩定且仍具有生產品質。

好吧,我收回稱呼你們混蛋的話,但我真的不喜歡 alpha 標籤。它何時會脫離「alpha」?

在 beta 開始之前,WebDriver 程式碼中只有一兩個功能需要實作(例如處理警示)和一些清理工作。但希望在年底前能推出 2.0.0 最終版。當我們談到「alpha」與「beta」時,這是團隊對它們的工作定義。

  • Alpha – API 可能會而且很可能會變更。可能會以戲劇性的方式變更。
  • Beta – 在 API 設定後,確保它們適用於主要瀏覽器

「主要瀏覽器」?這到底是什麼意思?

現在它指的是 Firefox、Internet Explorer 和至少一個基於 WebKit 的瀏覽器(Safari 或 Chrome)

簡而言之… Se2 的要求是伺服器必須向後相容於 Se-RC 1.x,這已透過從通用原始碼儲存庫建構程式碼來實現。這表示如果您正在使用 Se-RC,您可以將伺服器切換為 2.x 伺服器,並且不會對腳本的執行產生任何影響。此外,您可以開始試用來自 WebDriver 的新功能。

上次修改日期:2021 年 8 月 7 日:重新命名目錄 (e9895f27c26)