9

目前,我可以通过 RemoteWebDriver 发送 firefox 配置文件,但无法通过配置文件发送 RestCLient 扩展。我需要某个 REST 客户端扩展(firefox 插件)可用于我的测试用例执行。

如果我使用 firefox 驱动程序在本地运行测试用例,它可以工作....但是如何使用 RemoteWebDriver 实现相同的目标?

 File profileDirectory = new File("c://mach//lib//prof");
 FirefoxProfile profile = new FirefoxProfile(profileDirectory);
 driver = new FirefoxDriver(profile);
 driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);

干杯

4

1 回答 1

24

创建FirefoxProfile实例后,使用DesiredCapabilitiesAPI ( FirefoxDriver.PROFILE= "firefox_profile" ) 传输配置文件:

File profileDirectory = new File("c://mach//lib//prof");
FirefoxProfile profile = new FirefoxProfile(profileDirectory);

DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability(FirefoxDriver.PROFILE, profile);
driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capabilities);

注意:您不必提前创建配置文件,FirefoxProfileAPI 提供了几种方便的方法(“方法摘要”部分)来编写配置文件。例如,如果您想启动预装扩展的 Firefox,请使用:

FirefoxProfile firefoxProfile = new FirefoxProfile();
File extension = new File("extension.xpi");
firefoxProfile.addExtension(extension);

DesiredCapabilities capabilities = DesiredCapabilities.firefox();
capabilities.setCapability(FirefoxDriver.PROFILE, firefoxProfile);
driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capabilities);

使用远程 Web 驱动程序的文档:

于 2013-06-10T20:53:52.177 回答