我正在尝试使用selenium webdriver打开浏览器,但它正在抛出java.lang.RuntimeException:无法找到一个自由端口'错误

时间:2017-04-24 11:22:32

标签: java selenium-webdriver

package Test1;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

public class New1 {

    public static void main(String[] args) {

        System.setProperty("webdriver.IE.driver", "C:\\Users\\37397\\Desktop\\New folder\\Selenium\\Software\\IEDriverServer.exe");
        WebDriver d=new InternetExplorerDriver();
    }
}

例外:

线程" main"中的例外情况java.lang.RuntimeException:无法找到空闲端口     在org.openqa.selenium.net.PortProber.findFreePort(PortProber.java:67)     在org.openqa.selenium.remote.service.DriverService $ Builder.build(DriverService.java:292)     在org.openqa.selenium.ie.InternetExplorerDriver.setupService(InternetExplorerDriver.java:251)     在org.openqa.selenium.ie.InternetExplorerDriver。(InternetExplorerDriver.java:172)     在org.openqa.selenium.ie.InternetExplorerDriver。(InternetExplorerDriver.java:146)     在Test1.New1.main(New1.java:14)

Chrome和Firefox浏览器也出现此错误。

1 个答案:

答案 0 :(得分:-1)

错误清楚地表明问题在于找到端口。第一&最重要的是你应该杀死所有驱动程序的所有悬空实例,例如壁虎,铬和&即从您的Windows任务管理器。如果可能,请重新启动系统。

现在,使用Selenium 3.4.0与IEDriverServer 3.4和IE浏览器10&以上代码将帮助您使用IE浏览器:

    String driverPath = "C:\\Utility\\BrowserDrivers\\";
    //IE Capabilities
    System.setProperty("webdriver.ie.driver", driverPath+"IEDriverServer.exe"); //observe its "ie" here, not "IE"
    DesiredCapabilities cap = DesiredCapabilities.internetExplorer();
    cap.setCapability("browserName", "internet explorer");
    InternetExplorerDriver driver = new InternetExplorerDriver(cap);
    driver.manage().window().maximize();
    driver.manage().timeouts().implicitlyWait(10,TimeUnit.SECONDS);
    driver.navigate().to("http://your_url.com");

如果这有助于您,请告诉我。