2012-01-26 17 views
1

Seleniumハブがブラウザを利用できるノードを要求する(できれば組み込みの)方法があるのだろうかと思います。基本的には、私のハブに、 "BrowserName = 'any' 'のようなものを指定して、maxInstancesより少ないインスタンスを実行しているノードでマッチさせ、ノードが実行するブラウザを決定させるようにします。Selenium Grid 2 DesiredCapabilitiesをブラウザ非依存にする方法はありますか?

この背景には、あるブラウザで複数のインスタンスを使用せずに、任意のノードで並列に実行されるテストの数を最大限に増やしたいという動機があります。私は、どのブラウザが特定のテストで動作しているか気にしません。

参考として、私は現在、セレニウムサーバ2.17を使用しています。ここで

答えて

0

ACK、これは迷惑です。

コマンドラインパラメータがあり、指定したbrowserNameを上書きできるようになっていますが、今は見つかりませんでした。

私の記憶は遠く離れていない場合は、パラメータを使用すると、多かれ少なかれ、あなたが求めている何をすべきか聞かせて - に関係なく、ノードをブラウザ何のは、それが持っている、と関係なく、ハブ、1を要求するもののを言います特定のブラウザーは常に開始されます。

自分自身に注意:セレニウムのすべてのコマンドラインオプションの適切なリストを開始し、可能であればチームに提出してwikiに追加します。

これを達成する方法の1つは、独自の「CapabilityMatcher」クラスを作成することですが、カスタムJARを作成する場合を除き、オプションではない可能性があります。ハブに個々のノードではなく、ブラウザの変更。

+0

OK - 見つかりました。これは "forcedBrowserMode"と呼ばれています。それは "Selenium-RC"にのみ適用され、Webdriverには適用されないようです。 http://groups.google.com/group/selenium-developers/browse_thread/thread/e297bee96740c0a?fwc=1 http://www.thoughtworks-studios.com/docs/twist/2.0/help/how_do_i_configure_selenium html https://gist.github.com/1647013 –

+0

驚くべきことに、これは私が必要とするもの(ある方法または別のもの)を達成するはずだと思います。 – SolsticeShard

0

あなたが行く:

java -jar selenium-server-standalone-2.14.0.jar -role node -hub http://localhost:4444/grid/register -maxSession 3 -browser browserName=firefox,maxInstances=1 -browser browserName=chrome,maxInstances=1 ...

+0

これは私が説明したことを成し遂げているかどうかはわかりません。私が間違っていないならば、これはすべての機能を開いたノードを登録しますが、ハブは依然としてDesiredCapabilitiesのブラウザを指定しなければなりません。私のノードは現在3つのブラウザ機能(Chrome、Firefox、IE)に登録されていますが、ハブは3つのブラウザが同時に動作していることを確認するためにこれらの3つを尋ねるループを繰り返さなければなりません。私は、ハブが「どのブラウザでもこのテストを自由に実行する」と言って、ノードが開いているもののどれかを選択させる方法を欲しがっています。 – SolsticeShard

関連する問題