2016-07-08 106 views
0

我剛開始學習Selenium WebDriver。你能幫我解決以下問題嗎? 我只是想打開的網站(我能夠成功地打開瀏覽器,但導航得到了失敗的)線程「main」中的異常org.openqa.selenium.remote.UnreachableBrowserException:無法啓動新會話

import java.util.concurrent.TimeUnit; 
import org.openqa.selenium.*; 
import org.openqa.selenium.firefox.FirefoxDriver; 

public class webdriverdemo { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     WebDriver driver = new FirefoxDriver(); 

     //Puts an Implicit wait, Will wait for 10 seconds before throwing exception 
     driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 

     //Launch website 
     driver.navigate().to("http://www.calculator.net/"); 

     //Maximize the browser 
     driver.manage().window().maximize(); 
    } 
} 

我發現下面的錯誤:在線程「主要」 組織

例外。 openqa.selenium.remote.UnreachableBrowserException:不能 開始一個新的會話。可能的原因是服務器或瀏覽器啓動失敗的遠程地址爲無效的 。 構建信息:版本:'2.53.0',修訂:'35ae25b',時間:'2016-03-15 17:00:58' 系統信息:主機:'WIN-EHSO6G1D9KD',ip:'192.168.13.2 ',os.name:'Windows Server 2012',os.arch:'amd64',os.version:'6.2', java.version:'1.8.0_91' 驅動程序信息:driver.version:FirefoxDriver at org .openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:665) at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:249) at org.openqa.selenium.remote.RemoteWebDriver。( RemoteWebDriver.java:131) 在org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:218) 在org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:211) 在org.openq (FirefoxDriver.java:207) at org.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:120) at webdriverdemo.main(webdriverdemo.java:13) 引起: java.net.SocketException:連接重置 at java.net.SocketInputStream.read(Unknown Source) at java.net.SocketInputStream.read(Unknown Source) at org.apache.http.impl.io.SessionInputBufferImpl.streamRead( SessionInputBufferImpl.java:139) 在org.apache.http.impl.io.SessionInputBufferImpl.fillBuffer(SessionInputBufferImpl.java:155) 在org.apache.http.impl.io.SessionInputBufferImpl.readLine(SessionInputBufferImpl.java:284) at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponsePa rser.java:140) at org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead(DefaultHttpResponseParser.java:57) at org.apache.http.impl.io.AbstractMessageParser.parse(AbstractMessageParser.java:261) 在org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader(DefaultBHttpClientConnection.java:165) 在org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader(CPoolProxy.java:167) 在org.apache.http。 protocol.HttpRequestExecutor.doReceiveResponse(HttpRequestExecutor.java:272) 在org.apache.http.protocol.HttpRequestExecutor.execute(HttpRequestExecutor.java:124) 在org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec。 java:271) at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolEx (org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110) at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184) at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:71) at org.apache。 http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55) at org.openqa.selenium.remote.internal.ApacheHttpClient.fallBackExecute(ApacheHttpClient.java:144) at org.openqa.selenium.remote.internal。 ApacheHttpClient.execute(ApacheHttpClient。的java:90) 在org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:142) 在org.openqa.selenium.firefox.internal.NewProfileExtensionConnection.execute(NewProfileExtensionConnection.java:160) 在有機openqa.selenium.firefox.FirefoxDriver $ LazyCommandExecutor.execute(FirefoxDriver.java:380) 在org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:644)

... 7個

Firefox版本47.0.6 平臺Win2k12 r2

回答

0

似乎在使用Firefox創建會話時存在一些問題。 請嘗試使用以下代碼並使用Chrome瀏覽器進行測試。

您需要從下載可執行司機:https://sites.google.com/a/chromium.org/chromedriver/downloads

public static void main(String[] args){ 
    System.setProperty("webdriver.chrome.driver","/path/to/chromedriver"); 
    WebDriver driver = new ChromeDriver(); 
    driver = new ChromeDriver(); 
    //Puts an Implicit wait, Will wait for 10 seconds before throwing exception 
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 

    //Launch website 
    driver.get("http://www.calculator.net/"); 

    //Maximize the browser 
    driver.manage().window().maximize(); 
} 
+0

由於其工作卻是露出什麼異常。當我執行這段代碼時,它打開兩個chrome會話,一個chrome會話正常工作正常,但其他會話顯示錯誤。我得到了下面的錯誤本次會議「關於端口啓動ChromeDriver 2.22.397933(1cab651507b88dec79b2b2a22d1943c01833cc1b)18671個 只有本地連接被允許。(1cab651507b88dec79b2b2a22d1943c01833cc1b)端口37134個 只有本地連接被允許 開始ChromeDriver 2.22.397933。」 –

+0

現在我可以打開一個會話,並且工作正常,但會出現以下錯誤。你能幫我解決這個問題嗎?在端口25061上啓動ChromeDriver 2.22.397933(1cab651507b88dec79b2b2a22d1943c01833cc1b) 只允許本地連接。 –

+0

嘗試更新您的Chrome瀏覽器。我面臨同樣的問題。我將Chrome瀏覽器更新爲最新的和使用最新的Chromedriver。它爲我工作。我希望這也適用於你。 – BBP

相關問題