リモートホストにセレンサーバーをセットアップする方法と、それを適切に使用する方法に関する明確で簡潔なチュートリアルを探しています。私はまだサーバーのセットアップと構成全般に不慣れであり、セレンのドキュメントはより高いレベルの理解を意図した方法で表現されているようです. ローカル マシンで動作するいくつかのテスト ケースが既にセットアップされており、リモートでセットアップする方法を知りたいと考えています。
1 に答える
サーバ側:
サーバー パーツ、つまりスタンドアロン サーバー + Web ドライバー (例: chromedriver) のセットアップ方法。
スタンドアロンサーバーにはヘルプがあります:
java -jar <path_to>/selenium-server-standalone-<version>.jar -help
実際には、selenium-server (5+MB jar) と selenium-server-standalone (30+ MB jar) の 2 つがあります。 https://selenium-release.storage.googleapis.com/index.html?path=2.47/
私が理解しているように、ほとんどのタスクには selenium-server-standalone で十分です。違いについてのトピックがあります:
クライアント側:
コードで WebDriver インターフェイスの実装を使用する前に。
たとえば、ChromeDriver を使用できます。 https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/chrome/ChromeDriver.html
ここで、RemoteWebDriver (WebDriver インターフェイスの実装) を使用する必要があります: https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/remote/RemoteWebDriver.html
さまざまなブラウザー機能で RemoteWebDriver を使用する方法のコード スニペットを次に示します 。
たとえば、次のようなクライアント コードが考えられます。
ChromeOptions options = new ChromeOptions();
// set some options
DesiredCapabilities dc = DesiredCapabilities.chrome();
dc.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), dc);
driver.get("http://www.google.com");
...
それがどのように機能するかについての説明があります:
RemoteWebDriver は、テスト スクリプト開発者がリモート マシン上の RemoteWebDriver サーバー経由でテスト スクリプトを実行するために使用できる WebDriver インターフェイスの実装クラスです。
RemoteWebDriver には、サーバーとクライアントの 2 つの部分があります。
RemoteWebDriver サーバーは、RemoteWebDriver クライアントからのさまざまな要求をポートでリッスンするコンポーネントです。リクエストを受信すると、Firefox ドライバー、IE ドライバー、または Chrome ドライバーのいずれかに転送します。
RemoteWebDriver クライアントとして機能する言語バインディング クライアント ライブラリ。クライアントは、ローカルでテストを実行するときに使用していたように、テスト スクリプト リクエストを JSON ペイロードに変換し、JSON ワイヤ プロトコルを使用して RemoteWebDriver サーバーに送信します。
テストをローカルで実行すると、WebDriver クライアント ライブラリは Firefox ドライバー、IE ドライバー、または Chrome ドライバーと直接通信します。テストをリモートで実行しようとすると、WebDriver クライアント ライブラリは RemoteWebDriver サーバーと通信し、サーバーは Firefox ドライバー、IE ドライバー、または Chrome ドライバーのいずれか (WebDriver クライアントが要求するもの) と通信します。
http://www.myyesm.com/what-is-remotewebdriver/からのコピー/貼り付けです 。