2013-05-03 15 views
20

Sto tentando di eseguire un caso Test Junit che ho esportato da Selenium IDE. Sto ottenendo un'eccezione eccezionale. Sto usando Windows XP, Firefox 20.0.1 e utilizzando selenio-server-standalone-2.28.0.jar.Upon eseguito, una finestra vuota di Firefox è aperta. Quando chiudo la finestra ottengo sotto eccezione nella consoleorg.openqa.selenium.firefox.NotConnectedException: impossibile connettersi all'host 127.0.0.1 sulla porta 7055 dopo 45000 ms

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) 

Questa eccezione in JUnit traccia mancata

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) 
+2

Questo thread è coperto, suppongo: [http: // stackoverflow.com/domande/15814695/selenio WebDriver-fa-non-Connect-con-firefox-20] [1] [1]: http://stackoverflow.com/questions/15814695/selenium-webdriver -does-not-connect-with-firefox-20 – patrungel

+0

Sebbene le risposte seguenti siano corrette al momento della scrittura, potrebbe essere utile notare che il driver FF non funzionerà per nulla dopo FF 47 e che il [Marionette Il driver dovrebbe essere usato invece] (http://stackoverflow.com/a/37728659/1992129). Pubblicare un commento da quando ho trovato questo post prima di trovare la mia risposta nel post collegato. Stavo avendo lo stesso errore, ma con diverse versioni del software. –

risposta

9

La tua versione di selenio non è probabilmente compatibile con la versione di Firefox. Prova a installare una versione precedente di Firefox.

  1. Prima di installare e una versione precedente, accedere a Firefox e disattivare l'opzione di aggiornamento automatico.

    Firefox -> Opzioni -> Opzioni -> Avanzate -> Aggiornamento -> Verifica aggiornamenti, ma lascia decidere ad installarli

  2. andare qui e installare e versione precedente. https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/

    Non è necessario disinstallare Firefox, basta installare la versione che si desidera installare. Potrebbe essere necessario provare alcune versioni finché non si ottiene quello giusto.

+0

Oggi ho affrontato esattamente lo stesso problema utilizzando Selenium WebDriver 2.31 con FF 27.0.1. Ora è risolto con l'utilizzo di WebDriver 2.39 con FF 27.0.1 –

+1

o se il browser è una nuova versione, aggiorna Selenium invece di installare il vecchio browser ... – kiedysktos

-3

È necessario disinstallare il Firefox attualmente installato. Reinstalla FF con la versione minima 18.0.1 Funziona davvero.

1

Ho appena avuto questo problema con JBehave per WebDriver utilizzando Maven. Ho costretto JBehave di utilizzare una versione più alta di selenio nel modo seguente, che lavora per me:

<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> 
0

Ho avuto esattamente lo stesso problema, ho risolto declassando versione Firefox per 27.0.1

1

Nessuno delle soluzioni di menzione ha funzionato per me. Che cosa ha funzionato per me è quello di utilizzare più recente di Firefox (attualmente 32.0.2) e l'ultima il selenio

<dependency> 
     <groupId>org.seleniumhq.selenium</groupId> 
     <artifactId>selenium-java</artifactId> 
     <version>2.43.1</version> 
    </dependency> 

versione 2.43.1 ha lavorato, 2.42.1 no.

+0

Sono totalmente d'accordo sull'utilizzo delle versioni FF/Selenium più recenti invece di eseguire il downgrade di qualsiasi cosa se non necessario – kiedysktos

0

Quando la versione di WebDriver non corrisponde alla versione di Firefox, il compilatore java genera questo errore. Assicurati che il tuo WebDriver e Firefox siano entrambi la versione più recente.

0

L'aggiornamento a selenium-server-standalone-2.44.0.jar funziona per me (http://www.seleniumhq.org/download/).

Sembra che sia necessaria una combinazione adeguata di browser, selenio-driver e selenio-server.

Ubuntu 14.04, Firefox 35.0.1 e selenio-webdriver 2.44.0 funziona per me in un'app Ruby on Rails. Chrome non ha funzionato da quando l'ho aggiornato, anche con l'ultimo driver rilasciato.