2016-11-29 130 views

回答

0

在紅寶石整合規範的背景下,

水豚是測試框架和硒是它的驅動程序(運行你的測試在Firefox)中的一個。您可以使用其他驅動程序與水豚(它可以運行您的測試在無頭鍍鉻或根本沒有瀏覽器)。

2

簡單的說,水豚的職責是

  • 爲您提供DSL,使用它可以表達你的瀏覽器交互
  • 要的是DSL翻譯的東西它的驅動程序理解
  • 與不同的測試框架/庫(如rspec)集成

硒(就紅寶石世界而言)只是水豚的驅動程序。其職責是:

  • 要了解它自己的瀏覽器集成API(這仍然是較高水平,但沒有高水平水豚的DSL)
  • 要實際操作瀏覽器的基礎上,給出
  • 的說明
+0

Selenium不直接與瀏覽器交互。它要麼與瀏覽器驅動程序交互,要麼與一個或多箇中間節點/服務器進行交互,後者又與瀏覽器驅動程序進行交互。另外我會質疑Selenium使用的是API,而不是DSL。水豚有一個DSL。 – titusfortner

+0

@titusfortner在兩個運動部件 - 水豚和硒的情況下,這是準確的。至於評論......好,更新。 – ndn