web-dev-qa-db-ja.com

Selenium RCとWebDriverの違い

Selenium RCWebDriverの基本的な違いは何ですか?

34
Muna

WebDriverおよびSelenium RC からの引用:

Selenium-WebDriverは、各ブラウザーの自動化のネイティブサポートを使用して、ブラウザーを直接呼び出します。これらの直接呼び出しが行われる方法、およびそれらがサポートする機能は、使用しているブラウザーによって異なります。各「ブラウザドライバ」に関する情報は、この章の後半で提供されます。

Selenium-RCに精通している人にとっては、これはあなたが慣れているものとはまったく異なります。 Selenium-RCは、サポートされている各ブラウザーで同じように機能しました。ブラウザがロードされたときにJavaScript関数をブラウザに「挿入」し、そのJavaScriptを使用してブラウザ内でAUTを駆動しました。 WebDriverはこの手法を使用しません。繰り返しになりますが、ブラウザに組み込まれた自動化サポートを使用して、ブラウザを直接駆動します。

Selenium-WebDriverの使用方法に応じて、Selenium Serverが必要な場合と必要でない場合があります。 WebDriver APIのみを使用する場合、Selenium-Serverは必要ありません。ブラウザとテストがすべて同じマシンで実行され、テストがWebDriver APIのみを使用する場合、Selenium-Serverを実行する必要はありません。 WebDriverはブラウザーを直接実行します。

ただし、Selenium-ServerをSelenium-WebDriverで使用する理由はいくつかあります。

  • Selenium-Gridを使用して、テストを複数のマシンまたは仮想マシン(VM)に分散しています。
  • 現在のマシン上にない特定のブラウザーバージョンを持つリモートマシンに接続したい。
  • Javaバインディング(Python、C#、またはRuby)を使用していないため、HtmlUnit Driverを使用したい場合。
52
Ripon Al Wasim

Selenium RCは、WebページがロードされるときにJavaScript関数をブラウザーに挿入します。

Selenium WebDriverは、ブラウザの組み込みサポートを使用してブラウザを駆動します。

19
pkhabya

上記の答えにポイントを追加したい、

Selenium RCがブラウザにJavaスクリプトコードを挿入しているため、ブラウザはほぼ同様の動作をします

ただし、WebDriverの場合、呼び出しは特定のブラウザーのネイティブサポートを使用して直接行われます。ブラウザーは、ユーザーとの対話の場合のように動作します。

0
Sapna