明らかな何かが欠けているかもしれませんが、ここに私がセットアップしたものがあります:
- CentOs 6.4 ヘッドレス VM (Selenium ハブを実行)
- CentOs 6.4 ヘッドレス VM (稼働ノード) (#1 と同じ VM)
- Windows XP Pro VM (実行中のノード)
- CentOs 6.4 ヘッドレス VM (Watir テストの実行)
1、2、および 4 で、コマンド rvm use ruby-2.1.1 を実行し、puppet モジュールを適用して次の gem をインストールします: ['watir-webdriver', 'headless', 'bacon', 'selenium-webdriver ','rspec','cucumber','test-unit','page-object', 'ci_reporter' ]
次に、#1で、次を実行します:
java -Xms1024M -Xmx2048M -jar selenium-server-standalone-2.40.0.jar -role ハブ
#2で、(これは#1と同じマシンです。次を実行します:
java -jar selenium-server-standalone-2.40.0.jar -role node -host <#1 VM DNS> -port 5555 -hub http://<#1VM DNS>:4444/grid/register
またはコマンド:
java -jar selenium-server-standalone-2.40.0.jar -role node -hub http://<#1 VM DNS>:4444/grid/register -maxSession 20 -port 5555
両方のケースで、ノードが実際に接続されているか、ハブに登録されているノードでハブに表示されない場合、ノードで取得する最後の行は次のとおりです。
06:20:03.931 INFO - Starting auto register thread. Will try to register every 5000 ms.
06:20:03.932 INFO - Registering the node to hub :http://<#1 VM DNS>:4444/grid/register
IMO、「登録」とは、進行中であり、完了していないことを意味します。とにかく、ハブコンソールを開きます@
http://<#1 VM DNS>:4444/
そして私は得る:
グリッド 2.40.0 を使用しています 公式の Selenium Wiki でヘルプを検索してください: 詳細はこちらのデフォルトの監視ページ: コンソール
コンソール リンクをクリックすると、次のプロキシが接続されていることがわかります。
id : http://<#3 Windows XP ProのIPアドレス>:5555、OS : XP
Windows XPで古いコマンドを実行していました(したがって、ハブが復旧したとき、接続されているようです)
C:\Documents and Settings\user1>java -jar selenium-server-standalone-2.40. 0.jar -role node -hubHost <#1 VM DNS> -hubPort 4444
ここで、windows ノードに対して、firefox の ruby/Watir で簡単なテストを実行する必要があります。
xvfb フレーム バッファをインストールして実行していない限り、ヘッドレス VM #1 または #4 に対してブラウザ テストを実行できません。
今私が走るとき
require "watir-webdriver"
caps = Selenium::WebDriver::Remote::Capabilities.firefox
caps.version = 12
caps.platform = :WINDOWS
caps[:name] = "Watir WebDriver"
browser = Watir::Browser.new(
:remote,
:url => "http://<#1 VM DNS>:4444/wd/hub",
:desired_capabilities => caps)
browser.goto "http://www.google.com"
p browser.title == "Google"
browser.close
エラーが発生します:
[リモート サーバー] org.openqa.grid.web.servlet.handler.RequestHandler(RequestHandler.java):114:「プロセス」内: 新しいセッションの転送エラーが見つかりません: 機能 [{platform=WINDOWS, javascriptEnabled=true, cssSelectorsEnabled =true, browserName=firefox, nativeEvents=false, name=Watir WebDriver, rotatable=false, takesScreenshot=true, version=12}] (org.openqa.grid.common.exception.GridException) (Selenium::WebDriver::Error ::未知のエラー)