7

リストをループしてさまざまな情報をテキストボックスに入力し、FirefoxDriverを使用して送信するJava Webドライバー駆動のセレン実行があります。

10 回目または 11 回目の繰り返しの後、1 台のコンピューターで、非常に再現性が高く、 の呼び出し findElement(By.id("mi4"))UnreachableBrowserException.

Jun 29, 2012 1:52:02 PM org.apache.http.impl.client.DefaultRequestDirector tryConnect
Information: I/O exception (java.net.BindException) caught when connecting to the target host: Address already in use: connect
Jun 29, 2012 1:52:02 PM org.apache.http.impl.client.DefaultRequestDirector tryConnect
Information: Retrying connect
Jun 29, 2012 1:52:02 PM org.apache.http.impl.client.DefaultRequestDirector tryConnect
Information: I/O exception (java.net.BindException) caught when connecting to the target host: Address already in use: connect
...
Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException: Error communicating with the remote browser. It may have died.
Build info: version: '2.24.1', revision: '17205', time: '2012-06-19 15:28:49'
System info: os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.7.0_04'
Driver info: driver.version: RemoteWebDriver
   at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:467)
   at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:242)
Caused by: java.net.BindException: Address already in use: connect
   at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method)
   at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
   at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:820)
   at org.openqa.selenium.remote.HttpCommandExecutor.fallBackExecute(HttpCommandExecutor.java:337)
   at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:297)
   at org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.execute(NewProfileExtensionConnection.java:136)

どのポートでもリッスンしているサードパーティ プログラムはありません。ただし、FirefoxDriver の 2 つのインスタンスを使用しています。つまり、2 つの Firefox インスタンス/Windows を並行して開いています。これは、Win7 マシンでは問題なく動作しますが、記載されている問題は Windows XP マシンで発生します。

Selenium 2.24.1 で Firefox 13 を使用しています。

4

1 に答える 1

7

何度も繰り返しているため、一時的なポートが不足しているようです。Windows XP では、エフェメラル TCP ポートのデフォルトの最大数は 5000 です。こちらの Microsoft KB 記事の解決策に従って、制限を増やしてみてください。マシンを再起動します。このソリューションは私にとってはうまくいきました。

于 2012-07-01T15:37:39.513 に答える