Java Selenium Gecko驱动程序无法加载

时间:2017-01-18 19:15:13

标签: java eclipse maven selenium firefox

问题:

使用testNG运行时未加载geckodriver.exe。 Firefox将启动,但selenium无法连接到浏览器,我收到错误:

Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. ....

我的设置:

  • Windows 7
  • Eclipse Neon 3
  • Selenium 3.0.1
  • Geckodriver v0.13.0(使用v0.11.1)
  • Firefox 48.0.2

首先,我使用Java和selenium创建了一个快速测试。它只是打开浏览器并导航到页面。当这个运行时,我看到geckodriver进程,然后firefox进程出现在任务管理器中。

然后我根据GURU99网站的设置使用Maven和testNG创建了一个新项目。我已将selenium和testNG添加到pom.xml文件中。

我将convert项目用于testNG(xml文件)并设置运行配置以运行XML文件。

当我运行测试时,我可以看到firefox进程,然后ff启动。但壁虎驱动程序从未启动过。

这是我的代码(不包括导入):

public class NewTest {

    private WebDriver driver;

    @Test
    public void test01() {        
        driver.get("http://www.startpage.com");       
        System.out.println("Pge title " + driver.getTitle());                 
    }

    @BeforeTest
    public void beforeTest() {        
        System.setProperty("webdriver.gecko.driver", "c:\\selenium\\geckodriver.exe");        
        driver = new FirefoxDriver();
    }

    @AfterTest
    public void afterTest() {
        driver.quit();
    }   
}

1 个答案:

答案 0 :(得分:1)

你错过了设置木偶的能力,例如

System.setProperty("webdriver.gecko.driver", <<Your driver path here>>);
DesiredCapabilities cap = DesiredCapabilities.firefox();
cap.setCapability(FirefoxDriver.MARIONETTE, true);
cap.setCapability(FirefoxDriver.BINARY, <<Your firefox.exe path here>>);
cap.setCapability(FirefoxDriver.PROFILE, <<Your firefox profile here>>);
driver = new FirefoxDriver(cap);

我正在使用上述内容,它就像魅力一样!

有关详情,请参阅:Selenium 3 using Firefox Geckodriver