在版本45(推送到版本47)之前,用于自动执行Firefox的驱动程序是每个客户端附带的扩展。但是,此扩展名已被删除,可能是由于政策更改所致,该政策现在要求所有扩展名均由Mozilla签名。
Marionette 是Firefox随附/随附的新驱动程序。该驱动程序具有自己的协议,该协议与Selenium /
WebDriver协议不直接兼容。
的 壁虎驱动器 (以前称为导线)是实施硒/ webdriver的协议的应用服务器。它转换Selenium命令并将其转发给
Marionette驱动程序 。
对于Java客户端,默认行为是使用Gecko驱动程序,但是可以将其替换为使用旧扩展作为具有以下
webdriver.firefox.marionette属性的驱动程序:
System.setProperty("webdriver.firefox.marionette", "false");
或具有以下
marionette能力
FirefoxOptions:
FirefoxOptions options = new FirefoxOptions() .setLegacy(true);WebDriver driver = new FirefoxDriver(options);// or with a remote serverWebDriver driver = new RemoteWebDriver(remoteUrl, options.toDesiredCapabilities());
或直接与
DesiredCapabilities:
DesiredCapabilities capa = DesiredCapabilities.firefox();capa.setCapability("marionette", false);WebDriver driver = new FirefoxDriver(capa);// or with a remote serverWebDriver driver = new RemoteWebDriver(remoteUrl, capa);
要定义Gecko驱动程序的位置,请将驱动程序放在
PATH环境变量中存在的文件夹中,或者在属性中定义位置
webdriver.gecko.driver:
System.setProperty("webdriver.gecko.driver", "C:\geckodriver.exe");
或使用在命令行中分配的属性启动远程服务器:
java -Dwebdriver.gecko.driver="C:\geckodriver.exe" -jar selenium-server-standalone-3.4.0.jar
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)