Selenium-Standalone-Server无法在Firefox上运行并保持空白

时间:2014-05-03 22:49:11

标签: java firefox selenium selenium-webdriver

我在Mac OSX 10.8.5上使用selenium-server-standalone-2.41.0.jar和Java 7 Update 55.

一切正常,使用Firefox版本25.0.1但如果我尝试Firefox的v26,v27,v28或v29,那么我的代码将打开firefox并且它将挂起(在Firefox屏幕上没有任何加载)。

当我将Firefox降级回v25时,它们都会再次开始正常工作。

有任何想法或建议吗?

由于

编辑:在Selenium bug论坛上发布了问题: https://code.google.com/p/selenium/issues/detail?id=7279

2 个答案:

答案 0 :(得分:2)

实际上还有很多其他线程让人们在Firefox启动时出现同样的问题,并且只是坐在那里做空白的空白屏幕。我尝试了从v25.0.1到v33的所有Firefox版本以及从v2.41.0到v2.44.0的所有版本的selenium-server-standalone,我可以使用的唯一组合是带有SSS v2.41.0的FF v25.0.1。 / p>

所以我终于想出了解决这个问题的方法,所以我可以使用FF v33进行普通冲浪并让Selenium使用FF v25。这就是我所做的:

(1)我将我的日常Firefox更新到最新版本。

(2)我从这里下载了第二个旧版本的Firefox(v25.0.1)https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/25.0.1/然后在我的Mac上安装到桌面上,然后将其从Firefox.app重命名为Firefox25.0.1.app然后将其移动到我的Applications文件夹中。

(3)我从这里为https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles创建了一个新的Firefox第二个配置文件并将其命名为ffSeleniumProfile

(4)然后我必须确保配置文件仍然具有默认的默认配置文件。在Mac上,查看~/Library/Application Support/Firefox/profiles.ini文件,它应该看起来像这样(请注意Default=1应位于Profile0下)

    [General]
    StartWithLastProfile=1

    [Profile0]
    Name=default
    IsRelative=1
    Path=Profiles/abcd1234.default
    Default=1

    [Profile1]
    Name=ffSeleniumProfile
    IsRelative=1
    Path=Profiles/a1b2c3d4.ffSeleniumProfile

(5)对于Selenium Server Standalone,请确保您从http://selenium-release.storage.googleapis.com/2.41/selenium-server-standalone-2.41.0.jar使用v2.41.0 selenium-server-standalone-2.41.0.jar

(6)最后,当您启动Java并调用Firefox / FirefoxDriver时,您需要指定它以使用Firefox25.0.1.app和ffSeleniumProfile。我这样做是通过将以下System.setProperty添加到我在启动java时使用的主java文件的main方法:

  public static void main(String[] args) 
    throws InterruptedException,MalformedURLException {

    System.setProperty("webdriver.firefox.bin", "/Applications/Firefox25.0.1.app/Contents/MacOS/firefox-bin");

    System.setProperty("webdriver.firefox.profile", "ffSeleniumProfile");

  }

现在,当我启动Selenium Java时,它将使用firefox的v25.0.1以及第二个配置文件,当我从桌面启动firefox时,它将使用默认配置文件以及我升级的最新版本。< / p>

这只是一种解决方法,但它现在解决了我的问题。

答案 1 :(得分:0)

嘿尝试逐一在Firefox浏览器中禁用一些附加组件并尝试运行代码这有助于我在Windows上。尝试一次..