5

最近、特に同じ pc で複数のタスクとプロセスが実行されている場合、selenium webdriver 2 は、常に Java ソケット例外を伴う、多くの到達不能なブラウザー例外を与えています。

 Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException:                         Could not start a new session. Possible causes are invalid address of the remote server or     browser start-up failure.
   Build info: version: '2.25.0', revision: '17482', time: '2012-07-18 21:09:54'
  System info: os.name: 'Windows Vista', os.arch: 'x86', os.version: '6.0',       java.version: '1.7.0_05'
   Driver info: driver.version: FirefoxDriver
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:493)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:182)
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:110)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:185)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:178)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:174)
at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:92)

    Caused by: java.net.SocketException: Permission denied: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:123)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:148)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:150)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:121)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:575)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:425)
at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
at org.openqa.selenium.remote.HttpCommandExecutor.fallBackExecute(HttpCommandExecutor.java:319)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:297)
at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.execute(NewProfileExtensionConnection.java:136)
at org.openqa.selenium.firefox.FirefoxDriver$LazyCommandExecutor.execute(FirefoxDriver.java:357)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:472)
... 7 more

なぜこれが頻繁に起こるのですか?selenim 2.25 は firefox 14 と互換性がありませんか?

4

4 に答える 4

3

私はこの問題に何ヶ月も苦労していることに気付きました。実際にほとんどすべてを試しましたが、ランダムな「UnreachableBrowserException」エラーが発生しました。

これが私にとって唯一の有効な解決策です。

System.setProperty("java.net.preferIPv4Stack" , "true");
于 2016-05-08T17:57:02.727 に答える
1

Selenium Web Driver でも同じ問題が発生しました。特に、Web ドライバーを再起動せずに長いテスト スクリプトを実行した場合。その後、パフォーマンスの高い新しいマシンに移行したところ、90% 近く回避できました。

これはメモリ不足が原因であると想定し、新しいマシンで RAM を 4GB にアップグレードしました。

これで問題は解決し、今ではすべて問題ありません。

注 : テストを実行するたびに、ドライバーを正しく終了したかどうかを確認してください。また、メモリ リークが原因でドライバーが強制終了される可能性もあります。

于 2013-03-06T17:26:47.917 に答える
0

私はこの問題に数回直面しました。同じことにはさまざまな理由が考えられます。

  1. ブラウザ インスタンスが正しく閉じられていません。driver.close() メソッドを呼び出しているときにドライバーを強制終了しているかどうかをタスクマネージャーから確認してください。私は主にクロムとIEでそれを観察しました。Firefox の場合、インスタンスは自動的に閉じられます。

  2. FF と Webdriver のバージョンは互いに互換性がある必要があります。Webdriver jar を変更して試してください。

  3. プロジェクトに不要な jar が存在する可能性があります。Xalan.jar は、一度問題を引き起こしたものです。取り外してご覧ください。

于 2016-03-28T10:39:06.140 に答える