Selenium IDEからエクスポートしたJunitテストケースを実行しようとしています。上記の例外が発生しています。WindowsXP、Firefox 20.0.1を使用しており、Selenium-server-standalone-2.28.0.jarを使用しています。実行すると、空のFirefoxウィンドウが開きます。そのウィンドウを閉じると、コンソールで例外が発生します
org.openqa.Selenium.firefox.NotConnectedException: Unable to connect to Host 127.0.0.1 on port 7055 after 45000 ms at
org.openqa.Selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.Java:96)
at org.openqa.Selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.Java:142)
at org.openqa.Selenium.remote.RemoteWebDriver.(RemoteWebDriver.Java:80)
at org.openqa.Selenium.firefox.FirefoxDriver.(FirefoxDriver.Java:121)
at org.openqa.Selenium.firefox.FirefoxDriver.(FirefoxDriver.Java:77)
at com.dci.dids.Selenium.SwamiRoleCreationTestCase.setUp(SwamiRoleCreationTestCase.Java:20)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at org.junit.internal.runners.BeforeAndAfterRunner.invokeMethod(BeforeAndAfterRunner.Java:74)
at org.junit.internal.runners.BeforeAndAfterRunner.runBefores(BeforeAndAfterRunner.Java:50)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:33)
at org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.Java:75)
at org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.Java:45)
at org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.Java:66)
at org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.Java:35)
at org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.Java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:34)
at org.junit.internal.runners.TestClassRunner.run(TestClassRunner.Java:52)
at org.Eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.Java:50)
at org.Eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.Java:38)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:467)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:683)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.Java:390)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.Java:197)
JUnit Failureトレースのこの例外
org.openqa.Selenium.WebDriverException: Failed to connect to binary FirefoxBinary(/usr/bin/firefox) on port 7055; process output follows: * LOG addons.xpi: startup LOG addons.xpi: Ignoring file entry whose name is not a valid add-on ID:
/tmp/anonymous5690381165464188533webdriver-profile/extensions/webdriver-staging LOG addons.xpi: checkForChanges * LOG addons.xpi: No changes found
System info: os.name: 'Linux', os.Arch: 'i386', os.version: '3.2.0-23-generic-pae', Java.version: '1.6.0_38' Driver info: driver.version:
FirefoxDriver at org.openqa.Selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.Java:108)
at org.openqa.Selenium.firefox.FirefoxDriver.startClient(FirefoxDriver.Java:142)
at org.openqa.Selenium.remote.RemoteWebDriver.(RemoteWebDriver.Java:80)
at org.openqa.Selenium.firefox.FirefoxDriver.(FirefoxDriver.Java:121)
at org.openqa.Selenium.firefox.FirefoxDriver.(FirefoxDriver.Java:77)
at com.dci.dids.Selenium.SwamiRoleCreationTestCase.setUp(SwamiRoleCreationTestCase.Java:20)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at org.junit.internal.runners.BeforeAndAfterRunner.invokeMethod(BeforeAndAfterRunner.Java:74)
at org.junit.internal.runners.BeforeAndAfterRunner.runBefores(BeforeAndAfterRunner.Java:50)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:33)
at org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.Java:75)
at org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.Java:45)
at org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.Java:66)
at org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.Java:35)
at org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.Java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:34)
at org.junit.internal.runners.TestClassRunner.run(TestClassRunner.Java:52)
at org.Eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.Java:50)
at org.Eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.Java:38)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:467)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:683)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.Java:390)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.Java:197) Caused by: org.openqa.Selenium.firefox.NotConnectedException: Unable to connect to Host 127.0.0.1 on port 7055 after 45000 ms at org.openqa.Selenium.firefox.internal.NewProfileExtensionConnection.start(NewProfileExtensionConnection.Java:96) ... 25 more
Java.lang.NullPointerException at com.dci.dids.Selenium.SwamiRoleCreationTestCase.tearDown(SwamiRoleCreationTestCase.Java:47)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:39)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at org.junit.internal.runners.BeforeAndAfterRunner.invokeMethod(BeforeAndAfterRunner.Java:74)
at org.junit.internal.runners.BeforeAndAfterRunner.runAfters(BeforeAndAfterRunner.Java:65)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:37)
at org.junit.internal.runners.TestMethodRunner.runMethod(TestMethodRunner.Java:75)
at org.junit.internal.runners.TestMethodRunner.run(TestMethodRunner.Java:45)
at org.junit.internal.runners.TestClassMethodsRunner.invokeTestMethod(TestClassMethodsRunner.Java:66)
at org.junit.internal.runners.TestClassMethodsRunner.run(TestClassMethodsRunner.Java:35)
at org.junit.internal.runners.TestClassRunner$1.runUnprotected(TestClassRunner.Java:42)
at org.junit.internal.runners.BeforeAndAfterRunner.runProtected(BeforeAndAfterRunner.Java:34)
at org.junit.internal.runners.TestClassRunner.run(TestClassRunner.Java:52)
at org.Eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.Java:50)
at org.Eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.Java:38)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:467)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.Java:683)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.Java:390)
at org.Eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.Java:197)
Seleniumのバージョンは、Firefoxのバージョンと互換性がない可能性があります。古いバージョンのFirefoxをインストールしてみてください。
古いバージョンをインストールする前に、Firefoxにアクセスして自動更新オプションをオフにします。
Firefox->オプション->オプション->詳細->更新->更新を確認しますが、インストールを選択します
ここに移動して、古いバージョンをインストールします。 https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/
Firefoxをアンインストールする必要はありません。インストールしたいバージョンをインストールするだけです。正しいバージョンを入手するまで、いくつかのバージョンを試してみる必要があるかもしれません。
Mavenを使用してWebDriver用のJBehaveを設定するときにこの問題が発生しました。 JBehaveに次の方法でSeleniumの上位バージョンを使用するように強制しました。
<dependency>
<groupId>org.jbehave.web</groupId>
<artifactId>jbehave-web-Selenium</artifactId>
<version>${jbehave.web.version}</version>
<exclusions>
<exclusion>
<groupId>org.seleniumhq.Selenium</groupId>
<artifactId>Selenium-Java</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.seleniumhq.Selenium</groupId>
<artifactId>Selenium-Java</artifactId>
<version>2.33.0</version>
</dependency>
言及された解決策はどれも私にとってはうまくいきませんでした。私のために働いたのは、最新のFirefox(現在32.0.2)と最新のSeleniumを使用することです
<dependency>
<groupId>org.seleniumhq.Selenium</groupId>
<artifactId>Selenium-Java</artifactId>
<version>2.43.1</version>
</dependency>
バージョン2.43.1は機能しましたが、2.42.1は機能しませんでした。
Selenium-server-standalone-2.44.0.jarへの更新は私には機能します( http://www.seleniumhq.org/download/ )。
ブラウザ、Selenium-driver、Selenium-serverの適切な組み合わせが必要なようです。
Ubuntu 14.04、Firefox 35.0.1、およびSelenium-webdriver 2.44.0は、RubyアプリのRailsで動作します。 Chromeは、最後にリリースされたドライバーであっても、更新してから機能しませんでした。
WebDriverのバージョンがFirefoxのバージョンと一致しない場合、Javaコンパイラーはこのエラーをスローします。WebDriverとFirefoxの両方が最新バージョンであることを確認してください。
私はまったく同じ問題を抱えていました。Firefoxのバージョンを27.0.1にダウングレードすることで解決しました