2017-02-02 25 views
0

DesiredCapabilities 'Chrome'>が 'Selenium Grid'で動作しません。DesiredCapabilities 'Chrome'>が 'Selenium Grid'で動作しない

  1. それが動作しないノードの1つにChromeブラウザを指すようにしようとしたとき、私は、しかし、正しくハブのセットアップおよびノー​​ド
  2. を持っています。

現在のコード:

 case "chrome": 
      if (null == webdriver) { 
       System.setProperty("webdriver.chrome.driver", Constant.CHROME_DRIVER_DIRECTORY); 
       DesiredCapabilities capability = DesiredCapabilities.chrome(); 
       capability.setBrowserName("chrome"); 
       capability.setVersion("55.0.2883.87 m"); 
       capability.setPlatform(Platform.WINDOWS); 
       webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability); 

      } 
      break; 

例外: org.openqa.selenium.SessionNotCreatedException:新しいリモートセッションを作成することができません。所望の機能=機能[{browserName =クロム、バージョン= 55.0.2883.87 M、プラットフォーム= WINDOWS}]、必要な機能=機能[{}]

enter image description here

答えて

0

物事のカップル:

  • ノード側では、クロムブラウザ(chromeブラウザ用)、geckodriver(firefoxブラウザ用)、IEDriverServer(IE用)がすべてPATH変数で使用可能であることを確認し、コマンドプロンプトを開いて名前を入力するだけで呼び出すことができます。
  • DesiredCapabilities capability = DesiredCapabilities.chrome();を実行すると、自動的にブラウザ名が適切に設定されます。だから、capability.setBrowserName("chrome");で再度設定する必要はありません(削除することができます)。
  • nodeConfig jsonファイルを使用してノードレベルでブラウザのバージョンを明示的に設定しない限り、capability.setVersion("55.0.2883.87 m");を削除してください。これにより、テストでchrome 55バージョンをサポートできるノードが要求されますが、あなたのノードで同じバージョン管理をすると、必要な機能が見つからないという新しいセッション要求がグリッドから消えます。
  • ハブがlocalhostのポート4444を聞いているように見えますが、ノードに直接接続しようとしているかのようにコードが表示されます。したがって、webdriver = new RemoteWebDriver(new URL("http://172.16.1.48:5555/wd/hub"),capability);を `webdriver = new RemoteWebDriver(新しいURL(" http://localhost:4444/wd/hub ")、capability)に変更してください。

これらの項目を処理したら、問題は解決されるはずです。

+0

助けてくれてありがとう – Gbru

関連する問題