java - 运行另一个 firefox.exe,而不是默认使用 Remote WebDriver 实现的 firefox.exe

标签 java selenium firefox

我正在使用 selenium,并且我会将 selenium 与特定文件夹中的 firefox.exe 一起使用,而不是已安装的文件夹。为此,我有以下代码:

System.setProperty("webdriver.firefox.bin", "./firefox-sdk/bin/firefox.exe");
    DesiredCapabilities cap = DesiredCapabilities.firefox();

    cap.setBrowserName("firefox");
    driver = new RemoteWebDriver(new URL(node), cap);

代码可以工作,但问题是当我使用 setProperty 时,它继续在 Program Files 文件夹中运行 Firefox,而不是在指定文件夹中运行,我做错了什么?

最佳答案

有两种方法可以启动未安装在程序文件中的 Firefox 版本。

方法1:使用FirefoxBinary

File pathToBinary = new File("./firefox-sdk/bin/firefox.exe");
DesiredCapabilities cap = DesiredCapabilities.firefox();
cap.setCapability("firefox_binary", pathToBinary);
driver = new RemoteWebDriver(new URL(node), cap);

方法2:使用webdriver.firefox.bin属性

在这种情况下,您必须在上述路径中安装另一个版本的 Firefox,然后您可以使用 System.setProperty() 设置属性 webdriver.firefox.bin

关于java - 运行另一个 firefox.exe,而不是默认使用 Remote WebDriver 实现的 firefox.exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38723366/

相关文章:

java - 如何确定在注册时结束句子的时间?

c# - 在 bet365 网站上,用于 Selenium 的 Chrome 驱动程序卡在灰屏中

java - 使用 Selenium WebDriver 和 FF24 上传文件

css - 有没有办法通过浏览器更改元素的相对位置值?

java - 为什么 Selenium 在 Google 主页上识别一个按钮而不是两个按钮

java方法同步和读/写互斥

java - 处理结果集中每一行的新日历/日期实例

java - 如何使用FirefoxProfile通过Firefox浏览器自动下载?

java - Hibernate 批量删除与单个删除

java - 两次测试接连进行