首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Selenium FireFoxDriver无法连接

Selenium FireFoxDriver无法连接
EN

Stack Overflow用户
提问于 2016-08-24 16:47:45
回答 5查看 9.9K关注 0票数 3

我第一次尝试使用Selenium来驱动Firefox。我使用了几乎相同的代码来驱动Chrome,没有问题。但是,当我尝试使用Firefox驱动程序时,浏览器会打开,暂停,然后,大约60秒后,我会得到一个错误报告,内容如下:

代码语言:javascript
复制
Unable to connect to host 127.0.0.1 on port 7055 after 45000 ms. Firefox   console output:
4474-a285-3208198ce6fd}","syncGUID":"dcskEFBTLyBH","location":"app-global","version":"48.0.1","type":"theme","internalName":"classic/1.0","updateURL":null,"updateKey":null,"optionsURL":null,"optionsType":null,"aboutURL":null,"icons":{"32":"icon.png","48":"icon.png"},"iconURL":null,"icon64URL":null,"defaultLocale":{"name":"Default","description":"The default theme.","creator":"Mozilla","homepageURL":null,"contributors":["Mozilla Contributors"]},"visible":true,"active":true,"userDisabled":false,"appDisabled":false,"descriptor":"C:\\Program Files\\Mozilla Firefox\\browser\\extensions\\{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi","installDate":1471881400240,"updateDate":1471881400240,"applyBackgroundUpdates":1,"skinnable":true,"size":21905,"sourceURI":null,"releaseNotesURI":null,"softDisabled":false,"foreignInstall":false,"hasBinaryComponents":false,"strictCompatibility":true,"locales":[],"targetApplications":[{"id":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}","minVersion":"48.0.1","maxVersion":"48.0.1"}],"targetPlatforms":[],"seen":true}
1472056603181   addons.xpi  DEBUG   getModTime: Recursive scan of {972ce4c6-7e08-4474-a285-3208198ce6fd}

我检查了其他指南,他们建议我更新我的.jar文件。我正在使用selenium-java-3.0.0-beta2 2和Firefox 48.0.1进行测试,所以我的文件是最新的。我想让它正常运行。

更新:代码仍然不工作,我已经设置了系统属性来正确设置geckodriver。但是,我仍然不能让司机正常工作。它甚至不会再启动浏览器了。

代码语言:javascript
复制
import org.openqa.selenium.*;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

public class SimpleFireFoxDriver {


public static void main(String[] args) {

    System.setProperty("webdriver.gecko.driver","C:\\Selenium\\geckodriver.exe");

    DesiredCapabilities capabilities = DesiredCapabilities.firefox();
    capabilities.setCapability("marionette", true);

   WebDriver driver = new FirefoxDriver();

   driver.get("http://www.youtube.com");

   System.out.println("Made it to the promised land");

   driver.quit();

    }

}

编辑: FireFox本身的路径位于这里:"C:\Program \Mozilla Firefox\firefox.exe“

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2016-08-24 17:28:35

发生这种情况是因为您设置了错误的系统属性。您需要按以下方式设置system属性:

代码语言:javascript
复制
System.setProperty("webdriver.gecko.driver","C:\\Selenium\\geckodriver.exe");

Selenium firefox驱动程序希望在启动木偶驱动程序和启动firefox之前设置此系统属性。如果您不设置任何系统属性并尝试实例化火狐驱动程序,那么您将得到以下错误:“驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置。”

希望这能有所帮助。

票数 3
EN

Stack Overflow用户

发布于 2016-11-20 16:10:00

更改系统属性对我有效。改为:

代码语言:javascript
复制
System.setProperty("webdriver.firefox.marionette","src\\test\\java\\lib\\geckodriver.exe");
driver= new FirefoxDriver();

希望这能有所帮助。

票数 5
EN

Stack Overflow用户

发布于 2016-12-12 14:59:53

用"webdriver.gecko.driver“换"webdriver.firefox.marionette”救了我的命!示例:

校正

代码语言:javascript
复制
System.setProperty("webdriver.firefox.marionette","C://selenium/gecko/geckodriver.exe");

不正确

代码语言:javascript
复制
System.setProperty("webdriver.gecko.driver","C://selenium/gecko/geckodriver.exe");
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39128940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档