Java &引用;未知错误"&引用;“讯息”:&引用;“连接被拒绝”&引用;stacktrace“;在Mac OS X上尝试通过GeckoDriver和Selenium使用firefoxprofile时

Java &引用;未知错误"&引用;“讯息”:&引用;“连接被拒绝”&引用;stacktrace“;在Mac OS X上尝试通过GeckoDriver和Selenium使用firefoxprofile时,java,selenium,firefox,geckodriver,firefox-profile,Java,Selenium,Firefox,Geckodriver,Firefox Profile,我在创建firefox驱动程序时遇到连接被拒绝错误 System.setProperty("webdriver.gecko.driver", "path to gecko driver"); FirefoxOptions options = new FirefoxOptions(); options.setLogLevel(FirefoxDriverLogLevel.FATAL); options.setAcceptInsecureCerts(true); options.addArgument

我在创建firefox驱动程序时遇到连接被拒绝错误

System.setProperty("webdriver.gecko.driver", "path to gecko driver");
FirefoxOptions options = new FirefoxOptions();
options.setLogLevel(FirefoxDriverLogLevel.FATAL);
options.setAcceptInsecureCerts(true);
options.addArguments("-profile", "./firefoxprofile");
options.setHeadless(true);
LOGGER.info("Completed setting firefox optons");
WebDriver driver = new FirefoxDriver(options);
日志:

1550014357421 mozrunner::runner INFO Running命令:“/Applications/Firefox.app/Contents/MacOS/Firefox bin”“-marionette”“-profile”。/firefoxprofile”“-front”“-no remote”
1550014357464 geckodriver::木偶调试等待60秒连接到127.0.0.1:61008上的浏览器
[GFX1-]:[OPENGL]初始化合成器失败,原因是:功能\u失败\u OPENGL\u创建\u上下文
找不到符号“GetGraphicsResetStatus”。
1550014417545 mozrunner::runner调试终止进程38393
由于通道错误而退出。

1550014417592 webdriver::服务器调试您的配置看起来不错

我在Linux中也遇到过类似的问题

  • 在我的例子中,解决方案是使用所有版本的gecko驱动程序进行测试,并且使用其中一个版本,它工作了

  • 您还可以检查IDE的o.s用户(eclipse、intellij)是否与firefox的用户相同。在我的例子中,eclipse是以root用户启动的,但是firefox不能以root用户启动

我希望这对您有所帮助。

在使用Selenium v3.x、GeckoDriver v0.24.0和Firefox Quantum v65.0时,您可以在每次运行测试执行时使用新的Firefox配置文件,您可以使用以下代码块:

System.setProperty("webdriver.gecko.driver", "C:\\path\\to\\geckodriver.exe");
FirefoxOptions options = new FirefoxOptions();
options.setProfile(new FirefoxProfile());
options.setLogLevel(FirefoxDriverLogLevel.FATAL);
options.setAcceptInsecureCerts(true);
options.setHeadless(true);
WebDriver driver = new FirefoxDriver(options);
driver.get("https://www.google.com");
您可以在中找到详细的讨论


我在Windows中使用python时也遇到了同样的问题。确保您的Firefox浏览器版本也是最新版本

经过多次搜索,我终于发现这是因为浏览器的前一个实例正在运行。请记住,不是我打开的另一个实例,而是之前由selenium打开的一个实例。如果可以,请关闭所有后台浏览器进程。我重新启动了系统,只要我记得执行
browser.quit()
,它就可以正常工作


如果在正确关闭对象之前停止程序,后台实例可能会继续运行,除非eclipse或您使用的任何IDE关闭它。

我将尝试使用不同版本的gecko驱动程序,关于o.s用户,我们使用同一用户运行测试和firefox。顺便说一下,我们正在使用远程登录(ssh)运行这些测试,不确定它是否与此处相关,请告诉我某些gecko驱动程序版本的结果是否适合您!版本0.21与@DebanjanBChrome提到的新配置文件设置一起工作,Opera也有同样的行为。你只需要找到你的操作系统的正确版本。配置文件和设置将根据您的需要进行更改。最后,如果这有助于解决您的一天,请单击左侧的复选标记将其标记为已解决或仅标记为有用:我尝试使用新配置文件,但由于某种原因仍然收到相同的错误我再次看到此问题
System.setProperty("webdriver.gecko.driver", "C:\\path\\to\\geckodriver.exe");
FirefoxOptions options = new FirefoxOptions();
options.setProfile(new FirefoxProfile());
options.setLogLevel(FirefoxDriverLogLevel.FATAL);
options.setAcceptInsecureCerts(true);
options.setHeadless(true);
WebDriver driver = new FirefoxDriver(options);
driver.get("https://www.google.com");