2016-07-04 12 views
4

私はprotacor 1.8を使用して、multiCapabilitiesと7つのクロムブラウザインスタンスを並列に実行していました。私はいつも私のテストスーツをうまく走らせることができました。私は最近、分度器をバージョン3.2.2にアップデートしました。私のテストスーツは断続的に次のエラーメッセージを返すようになりました。時々分度器がEADDRINUSE 127.0.0.1:4444エラーでテストを実行できない

Error: EADDRINUSE connect EADDRINUSE 127.0.0.1:4444 
    [chrome #31]  at ClientRequest.<anonymous> (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\http\index.js:365:15) 
    [chrome #31]  at emitOne (events.js:77:13) 
    [chrome #31]  at ClientRequest.emit (events.js:169:7) 
    [chrome #31]  at Socket.socketErrorListener (_http_client.js:267:9) 
    [chrome #31]  at emitOne (events.js:77:13) 
    [chrome #31]  at Socket.emit (events.js:169:7) 
    [chrome #31]  at emitErrorNT (net.js:1253:8) 
    [chrome #31]  at nextTickCallbackWith2Args (node.js:442:9) 
    [chrome #31]  at process._tickCallback (node.js:356:17) 
    [chrome #31] From: Task: WebElement.isSelected() 
    [chrome #31]  at WebDriver.schedule (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:344:17) 
    [chrome #31]  at WebElement.schedule_ (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:1712:25) 
    [chrome #31]  at WebElement.isSelected (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:2023:17) 
    [chrome #31]  at actionFn (C:\myAppe2e\node_modules\protractor\built\element.js:82:76) 
    [chrome #31]  at Array.map (native) 
    [chrome #31]  at C:\myAppe2e\node_modules\protractor\built\element.js:374:46 
    [chrome #31]  at Promise.invokeCallback_ (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:1329:14) 
    [chrome #31]  at TaskQueue.execute_ (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2790:14) 
    [chrome #31]  at TaskQueue.executeNext_ (C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2773:21) 
    [chrome #31]  at C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:2652:27 
    [chrome #31]  at C:\myAppe2e\node_modules\protractor\node_modules\selenium-webdriver\lib\promise.js:639:7 
    [chrome #31]  at process._tickCallback (node.js:369:9) 
    [chrome #31] Error 
    [chrome #31]  at ElementArrayFinder.applyAction_ (C:\myAppe2e\node_modules\protractor\built\element.js:371:27) 
    [chrome #31]  at ElementArrayFinder._this.(anonymous function) [as isSelected] (C:\myAppe2e\node_modules\protractor\built\element.js:83:30) 
    [chrome #31]  at ElementFinder._this.(anonymous function) [as isSelected] (C:\myAppe2e\node_modules\protractor\built\element.js:685:22) 
+0

「エラー:EADDRINUSE connect EADDRINUSE 127.0.0.1:4444」は、まったくわかりにくいエラーのように聞こえます。つまり、あなたの '4444'ポートはすでに別のプロセスで使用されています。 –

+0

私はそれを認識しています。私は私の分度器の設定が指しているデフォルトのポート4444で私のwebdriver-managerを起動します。それは外のエラーでうまく始まり、私は私のテストを実行するだけでこのエラーが発生します。奇妙なことは、いつか私のテストパスですが、EADDRINUSEエラーで失敗したときもあります。 –

+0

webdriver-managerによって作成された実行中のプロセスが正しく存在しないようです。誰もこの問題を見たことがありますか? –

答えて

0

ここで問題になっているのは、webdriverの設定ではありません。ポートを変更すると、最初は助けになるかもしれませんが、プログラムがVM /マシン上の利用可能なポートを消費している場合、この修正はあまり長く役に立たないでしょう。これは私が直面したのと同じ問題です。

net session /delete 
をそして、それはすべてのオープン、TIME_WAITとCLOSE_WAIT接続をシャットダウンしますので、私は走った(私の自動化を実行する前に)バッチスクリプトを作成しました。直ちにテストを再実行し、EADDRINUSEエラーなしで実行しました。これが少なくとも回避策として役立つことを願っています。がんばろう!

関連する問題