【发布时间】:2016-08-21 01:14:20
【问题描述】:
如何告诉 webdriver-io 使用 firefox 开发者版而不是普通的 firefox?我需要使用普通 firefox 不支持的 CSS4 选择器。我阅读了文档,但找不到选项。
【问题讨论】:
-
解决方案:使用 Safari
标签: javascript node.js selenium firefox webdriver-io
如何告诉 webdriver-io 使用 firefox 开发者版而不是普通的 firefox?我需要使用普通 firefox 不支持的 CSS4 选择器。我阅读了文档,但找不到选项。
【问题讨论】:
标签: javascript node.js selenium firefox webdriver-io
您需要通过设置binary 功能来重新定义 Firefox 的位置:
var webdriverio = require('webdriverio');
var options = {
desiredCapabilities: {
browserName: 'firefox',
firefox_binary: 'C:\\...\\firefox.exe'
}
};
或者通过使用新的二进制路径启动独立服务器:
java -jar "selenium-server-standalone-x.x.x.jar" -Dwebdriver.firefox.bin="C:\...\firefox.exe"
【讨论】:
firefox_binary 而不是binary。请注意,最新的开发版本可能尚未与驱动程序兼容。
Florent,感谢您的回答,我用它来测试我的应用程序与 Firefox Quantum。 我使用了 Firefox Developer Version,它已经包含了 Firefox Quantum Beta 14,并添加到了我的 BrowserFactory 类中:
else if (browserName.equals ("quantum") {
FirefoxOptions options = new FirefoxOptions();
System.setProperty ("webdriver.gecko.driver", "src/test/resources/drivers/geckodriver.exe");
System.setProperty(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE,"true");
System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE,javaIoTmpDir+"\\geckodriverlogs.txt");
System.setProperty("webdriver.firefox.bin", "C:\\Portable\\FirefoxPortableDeveloper\\App\\Firefox64\\firefox.exe");
driver = new FirefoxDriver(options);
【讨论】: