2013-12-12 11 views
7

でwebdriverをサーバーを待ってタイムアウトしました私は、スタンドアローンセレンサーバと分度器インストールされている:私は、スタンドアローンサーバがすでに実行していると分度器を実行した場合分度器スタンドアロンセレンは失敗:エラー:

webdriver-manager update 

を設定はセレンのインスタンスで指摘されています。

私は分度器を持ってサーバーを起動し、テストを実行したいと思っています。デフォルトの分度器によって はクロムドライバと私は最小限の設定を使用していますので、セレンサーバージャー見つける:

exports.config = { 
    capabilities: { 
     'browserName': 'chrome' 
    }, 
    specs: ['test/e2e/*.js'] 
}; 

をしかし、それが起動したときには、サーバーに接続することはできません。

Error: Timed out waiting for the WebDriver server at http://192.168.1.146:56159/ 
wd/hub 

私はwebdriverを-マネージャとseleniumnを開始する際、サーバがローカルホスト上で起動することを始めることに気づきました。 私は分度器に同じことをさせるように見えません。

私の推測では、ファイアウォールが接続を妨げているということです。

環境バージョン情報: - 作男v0.4.1
- ノード0.10.18 - セレン - サーバスタンドアロン・2.37.0.jar - セレン - サーバスタンドアロン・2.38.0.jar - 分度器0.14.0 - Windows 7のプロ

+0

この症状もあるため、ファイアウォールで発生する可能性があります。おかげさまで、https://stackoverflow.com/a/40940897/3961774 – Will

答えて

3

は、あなたの設定にサーバーを追加します。

exports.config = { 
    // The address of a running selenium server. 
    seleniumAddress: 'http://localhost:4444/wd/hub', 

    capabilities ... 
} 
+2

をご覧ください。設定にサーバーを追加すると、スタンドアロンのSeleniumサーバーを実行していることを意味します。私は何をやったのですか。別のタスクを開始して、セレンを開始する前にサーバーの初期化を待たなければなりませんでした。それは痛みです。より決定論的な道がありますが、私は会社のVPNに参加していないときにしか動作していないようでした。 – Joe

1

あなただけのChromeのスタンドアロンサーバーが必要な場合は、セレンChromeDriver実行可能ファイルを使用することができます。 webdriver-manager update --chromeはそれを行う必要がありますか、または会社のVPNまたはプロキシの背後にいる場合はhttp://chromedriver.storage.googleapis.com/2.9/chromedriver_win32.zipからC:\Users\*your-user-name*\AppData\Roaming\npm\node_modules\protractor\seleniumに手動でダウンロードできます(分度器0.22.0はクロムドライバ2.9と一致します)。 ChromeDriverのバージョンが正しくありません。 2.10は、実際にError: Timed out waiting for the WebDriver server at ...を引き起こす可能性があります。

あなたの設定ファイルは、次のようになります。

exports.config = { 
    chromeOnly: true, 
    chromeDriver: '../selenium/chromedriver', 
    capabilities: { 
    'browserName': 'chrome' 
    }, 
    specs: ['test/e2e/*.js'], 
    jasmineNodeOpts: { 
    showColors: true, 
    defaultTimeoutInterval: 30000 
    } 
}; 
関連する問題