Jenkins で Selenium Grid を使用しようとしています。サーバーとスタンドアロンの 2.35.0 jar を使用して Selenium Hub と Node を起動すると、すべてが完璧に機能します。ただし、Jenkins Selenium Grid Plugin をハブとして使用すると機能しません。
エラーは次の場所に表示されます。
driver = new RemoteWebDriver (新しい URL ( gridURL ), capabilities );
グリッドの URL は"http://localhost:4444/wd/hub"
機能はこれです:
DesiredCapabilities capabilities = DesiredCapabilities.firefox ();
capabilities.setPlatform ( Platform.LINUX );
次の例外がスローされます。
org.openqa.selenium.WebDriverException: Error forwarding the new session new session request for webdriver should contain a location header with the session.
Command duration or timeout: 25.28 seconds
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-08-17 12:46:41'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '3.8.0-31-generic', java.version: '1.7.0_40'
Driver info: org.openqa.selenium.remote.RemoteWebDriver
ハブとして Jenkins Selenium プラグイン バージョン 2.3 を使用し、ノードとして selenium-server-standalone-2.35.0.jar を使用します。
http://localhost:4444/
ブラウザーで開くと、次のように表示されます。You are using grid 2.29.0
だから、selenium-server-standalone-2.29.0.jar をダウンロードして、ハブとして実行させました。ノードはまだバージョン 2.35.0 です。それから私は同じ例外を持っています。2.29.0 でノードとハブを試しましたが、私の Firefox はこれには新しすぎるようです。
数時間検索しましたが、このエラーに関して何も見つかりませんでした。
編集: Jenkins によってインストールされるプラグインは、2013 年 8 月 18 日のものです: https://wiki.jenkins-ci.org/display/JENKINS/Selenium+Plugin
開発者は、2 日後の 2013 年 8 月 20 日にプラグインを更新しました。
これがエラーの原因かどうかはわかりませんが、可能です。これを行う方法はまだわかりませんが、github のソース コードから独自のプラグイン バージョンを構築してみます。