运行 Selenium 2 时在 Firefox 中激活 Firebug 的最佳方法是什么?

编辑:好吧,我意识到“最好”是可以解释的,但是基于配置文件的解决方案对于 selenium 1.0 来说确实是一个痛苦。因此,任何替代方案都被认为更好,直到被证明更糟糕;)

有帮助吗?

解决方案

您可以在代码中创建您的配置文件并动态添加所需的附加组件。假设您将 Firebug XPI 作为 firebug.xpi 保存到 C:\FF_Profile 文件夹中(转到 萤火虫下载页面, ,右键单击“添加到 Firefox”并另存为 C:\FF_Profile\firebug.xpi)。

在代码中:

   final String firebugPath = "C:\\FF_Profile\\firebug.xpi";
   FirefoxProfile profile = new FirefoxProfile();       
   profile.addExtension(new File(firebugPath));
   // Add more if needed
   WebDriver driver = new FirefoxDriver(profile);

这在 网络驱动程序常见问题解答

其他提示

你指的是具有萤火安装在浏览器实例的webdriver启动?如果是这样,您可以在实例化驱动程序,但eaisest方法是创建安装萤火火狐配置文件,然后使用下面的代码实例化驱动程序之前通过一个扩展:

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

只需通过名称来引用您的个人资料。实施例在红宝石:

@driver = Selenium::WebDriver.for :firefox, :profile => "default"

然后,加载的Firefox正常,并添加所需的扩展。现在,他们会在你的Selenium测试运行显示。

显然,火狐轮廓选项被消耗在硒的webdriver已经改变的方式。

在老的命令行(硒RC):

java -jar selenium-2.28.0.jar -firefoxProfileTemplate ~/.mozilla/firefox/3knu5vz0.selenium

更新了的webdriver:(注意,它希望轮廓的名称的而不是目录)

java -jar selenium-2.28.0.jar -Dwebdriver.firefox.profile=selenium

修改Firefox的位置类似 C:\用户\用户名\ AppData \漫游\ Mozilla的\火狐\ Profiles文件\ sgmqi7hy.default 硒/ webdriver的推出你的Firefox 让所有所需的设置 关闭并重新启动Firefox浏览器从硒/ webdriver的 就是这样,它解决您的问题!

我发现了一个在profiles.ini〜/ .mozialla /火狐/。在有一个叫默认简档,这是我所指定的像以下,然后火狐在测试就像我定期打开它打开(所有的插件等)。

java -jar selenium.jar -Dwebdriver.firefox.profile=default

如果没有上述选项的工作。那就试试这个。

  • 1)开端和类型下的命令(关闭所有现有firefox 会议第一次)

firefox-p

  • 2)这将打开一个选项,以创建一个新的火狐配置文件。
  • 3)创建一个文件可以说"硒".
  • 4)一旦firefox是开直接安装萤火或任何 其他插件的扩展。一旦完成接近的窗口。
  • 5),现在载入这个新通过的硒,使用以下java 发言。

    ProfilesIni档=new ProfilesIni();

    FirefoxProfile ffprofile=配置文件。getProfile("硒");

    WebDriver驱动程序=new FirefoxDriver(ffprofile);

  • 6)完成。享受。

我观察到的萤火虫被添加到浏览器,它是由默认禁用,未启用,当我使用的webdriver在运行时添加萤火到Firefox。因此,为了使这使我们可以根据需要添加以下行到配置文件。

profile.setEnableNativeEvents(true);

假设,萤火虫安装。你的目标是运行Firebug的。萤火虫可以运行/按F12键执行。所以萤火虫可以按照与Java硒的webdriver的命令运行:

Actions action = new Actions(driver);
action.sendKeys(Keys.F12).build().perform();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top