2013-04-22 41 views
15

在webdriver獨立服務器中運行自動化時,我隨機得到此異常。一旦它來到,我殺死了所有的java進程。那麼這個例外的解決方案是什麼?爲什麼它是隨機的?無法在45000毫秒內綁定到鎖定端口7054

不幸的是,據我所知,所有人都建議使用最新版本的selenium jar或者根據硒版本來兼容Firefox版本,或者他們說要檢查該端口是否正在使用(儘管它不會! )或重啓系統。很少有人建議卸載Firefox並重新安裝它。任何永久的解決方案或任何想法,爲什麼它來?

org.openqa.selenium.WebDriverException: Unable to bind to locking port 7054 within 45000 ms 
Build info: version: '2.30.0', revision: 'dc1ef9c', time: '2013-02-19 00:15:27' 
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0' 
Driver info: driver.version: FirefoxDriver 
Command duration or timeout: 47.94 seconds 
Build info: version: '2.28.0', revision: '18309', time: '2012-12-11 15:53:30' 
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0' 
Driver info: org.openqa.selenium.remote.RemoteWebDriver 
+0

您正在使用哪個Firefox版本? – Hemanth 2013-04-22 06:57:53

+0

您使用網格服務器還是獨立服務器? – 2013-04-22 11:54:38

回答

6

似乎像以前的webDriver實例(或其他)沒有釋放端口。下面是解決方法(糟糕的做法)針對此問題(JAVA):

public static FirefoxBrowser forceInit() { 
     try { 
      return new FirefoxBrowser(); 
     } catch (WebDriverException exc) { 
      return forceInit(); 
     } 
    } 

確保您的測試驅動器關閉,正確地:

driver.quit(); 
2

雖然問題/問題是很長一段時間,我面對今天在Windows環境下也是如此。我設法通過簡單的機器重啓來解決它。 我鼓勵你在做其他事之前先做這件事。

  • 操作系統Windows 7
  • 硒的服務器版本:2.35.0
+2

重啓有助於解決問題,但是如果代碼泄漏,問題會再次出現「driver.quit()」 - 調用 – alfonx 2014-01-03 16:25:13

5

確保你沒有任何的webdriver Firefox窗口開啓!

+2

另外,請確保您沒有運行任何已掛起的測試(保持WebDriver處於打開狀態)。如果你在grails中使用Selenium,那麼當tomcat實例在新版本中分支時就會發生這種情況。 – bschipp 2014-05-02 05:51:19

-2

去任務管理器殺死firefox,這可能會有所幫助。

0

我在fedora 23上遇到了與firefox 47.0和selenium webdriver 2.45.1相同的問題。通過使用firefox版本41修復了這個問題(版本42已經過測試並且工作良好)。在fedora上安裝ff41終端運行:

dnf install firefox-41.0.1-2.fc23 
0

萬一它可以幫助別人,我解決了這個錯誤刪除任何引用到本地主機從我的主機在Windows文件(我遠程執行測試從Linux到Windows中)

相關問題