2016-04-22 10 views
1

Nightwatch.jsを使用してWebアプリケーションのエンドツーエンドテストを構築/実行しており、ビルドプロセスの一環としてJenkinsと統合したいと考えています。私のローカルマシンでは、3つのブラウザ(Firefox、Safari、Chrome)すべてで問題なくテストを実行できます。個々のブラウザでも問題なく実行できます。私はセレンドライバの正しい最新バージョンを持っていて、nightwatch.jsonファイルでそれらを指しています。しかし何らかの理由で、新しいJenkinsのビルドが開始されたときに、これらのテストを実行している専用のマシンでSafariを起動することはできません。すべてが同じマシン上にあるように設定されていますが、エラーが発生し続けるNightwatchでSafariブラウザを起動できません

 Error retrieving a new session from the selenium server 
    Failed to connect to SafariDriver after 10066ms 

この場合、ChromeとFirefoxは問題なくロードできますが、Safariだけに問題があります。私たちは、Safari用のスタンドアロンのセレンドライバの最新バージョンをダウンロードしました。私はもう一度やりました。場合....

 { 
     "src_folders" : ["test"], 
     "output_folder" : "reports", 
     "custom_commands_path" : "node_modules/nightwatch-custom-commands-   assertions/js/commands", 
     "custom_assertions_path" : "node_modules/nightwatch-custom-commands-assertions/js/assertions", 
     "page_objects_path" : "", 
     "globals_path" : "", 

     "selenium" : { 
     "start_process" : true, 
     "server_path" : "lib/selenium-server-standalone-2.53.0.jar", 
     "log_path" : "", 
     "host" : "127.0.0.1", 
     "port" : 4444, 
     "cli_args" : { 
     "webdriver.chrome.driver" : "lib/chromedriver", 
     "webdriver.safari.driver" : "lib/selenium-server-standalone-2.53.0.jar" 
     } 
     }, 

     "test_settings" : { 
     "firefox" : { 
      "launch_url" : "http://localhost", 
      "selenium_port" : 4444, 
      "selenium_host" : "localhost", 
      "silent": true, 
      "screenshots" : { 
      "enabled" : false, 
      "path" : "./screenshots" 
      }, 
      "desiredCapabilities": { 
      "browserName": "firefox", 
      "javascriptEnabled": true, 
      "acceptSslCerts": true 
      }, 
      "end_session_on_fail": false, 
      "skip_testcase_on_fail": false 
     }, 

     "chrome" : { 
      "launch_url" : "http://localhost", 
      "selenium_port" : 4444, 
      "selenium_host" : "localhost", 
      "silent": true, 
      "screenshots" : { 
      "enabled" : false, 
      "path" : "./screenshots" 
      }, 
      "desiredCapabilities": { 
      "browserName": "chrome", 
      "javascriptEnabled": true, 
      "acceptSslCerts": true 
      }, 
      "end_session_on_fail": false, 
      "skip_testcase_on_fail": false 
     }, 

     "safari" : { 
      "launch_url" : "http://localhost", 
      "selenium_port" : 4444, 
      "selenium_host" : "localhost", 
      "silent": true, 
      "screenshots" : { 
      "enabled" : false, 
      "path" : "./screenshots" 
      }, 
      "desiredCapabilities" : { 
      "browserName" : "safari", 
      "javascriptEnabled" : true, 
      "acceptSslCerts" : true 
      }, 
      "end_session_on_fail": false, 
      "skip_testcase_on_fail": false 
     } 
    } 
} 

を私はまた、セレンサーバーを実行の別のインスタンスがあるように起こるかどうかを確認してください作りましたが、それは私のnightwatch.jsonファイルは次のようになります

場合決してません誰もがなぜこれが起こっているのかについての洞察を持っています。私はそれを感謝します。おかげ

答えて

0

UPDATE *****

はセレンドライバが動作するためにインストールする必要があるのSafariの拡張がある判明。

+0

答えに_more detail_を記入してください。 – nelsonic

+0

それは本当です。私は同じ問題を抱えています。私はSafariを持っており、Webdriverがインストールされています。それにもかかわらず、まだエラーが発生する –

3

SafariDriverを手動でインストールする必要があります。 SafariDriverはhereです。

safariDriverが有効かどうかを確認するには、Safari>環境設定>拡張機能>ここでwebDriver拡張機能を有効にします。デフォルトでは有効にする必要がありますが、デバッグが必要な場合に備えてください。ありがとう

関連する問題