org.openqa.selenium.firefox.FirefoxOptions#addPreference ( )源码实例Demo

下面列出了org.openqa.selenium.firefox.FirefoxOptions#addPreference ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Before
public void setup() throws MalformedURLException {
    DesiredCapabilities capabilities = new DesiredCapabilities();
    FirefoxOptions options = new FirefoxOptions();
    options.addPreference("media.navigator.permission.disabled", true);
    options.addPreference("media.navigator.streams.fake", true);
    capabilities.setCapability(FIREFOX_OPTIONS, options);

    driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"),
            capabilities);
}
 
@Before
public void setupTest() {
    FirefoxOptions options = new FirefoxOptions();

    // This flag avoids granting the access to the camera
    options.addPreference("media.navigator.permission.disabled", true);

    // This flag force to use fake user media (synthetic video of multiple
    // color)
    options.addPreference("media.navigator.streams.fake", true);

    driver = new FirefoxDriver(options);
}
 
源代码3 项目: enmasse   文件: TestUtils.java
public static RemoteWebDriver getFirefoxDriver() throws Exception {
    Endpoint endpoint = SystemtestsKubernetesApps.getFirefoxSeleniumAppEndpoint(Kubernetes.getInstance());
    FirefoxOptions options = new FirefoxOptions();
    // https://github.com/mozilla/geckodriver/issues/330 enable the emission of console.info(), warn()
    // etc
    // to stdout of the browser process. Works around the fact that Firefox logs are not available
    // through
    // WebDriver.manage().logs().
    options.addPreference("devtools.console.stdout.content", true);
    options.addPreference("browser.tabs.unloadOnLowMemory", false);
    return getRemoteDriver(endpoint.getHost(), endpoint.getPort(), options);
}
 
源代码4 项目: kurento-java   文件: Browser.java
private void createFirefoxBrowser(DesiredCapabilities capabilities) throws MalformedURLException {
  if (scope == BrowserScope.LOCAL) {
    WebDriverManager.firefoxdriver().setup();
  }
  FirefoxOptions firefoxOptions = new FirefoxOptions();
  // This flag avoids granting the access to the camera
  firefoxOptions.addPreference("media.navigator.permission.disabled", true);

  // This flag force to use fake user media (synthetic video of multiple color)
  firefoxOptions.addPreference("media.navigator.streams.fake", true);

  // This allows to load pages with self-signed certificates
  capabilities.setCapability("acceptInsecureCerts", true);
  firefoxOptions.setAcceptInsecureCerts(true);

  capabilities.setCapability(FIREFOX_OPTIONS, firefoxOptions);
  capabilities.setBrowserName(firefoxOptions.getBrowserName());

  // Firefox extensions
  if (extensions != null && !extensions.isEmpty()) {
    for (Map<String, String> extension : extensions) {
      InputStream is = getExtensionAsInputStream(extension.values().iterator().next());
      if (is != null) {
        try {
          File xpi = File.createTempFile(extension.keySet().iterator().next(), ".xpi");
          FileUtils.copyInputStreamToFile(is, xpi);
          firefoxOptions.getProfile().addExtension(xpi);
        } catch (Throwable t) {
          log.error("Error loading Firefox extension {} ({} : {})", extension, t.getClass(),
              t.getMessage());
        }
      }
    }
  }

  createDriver(capabilities, firefoxOptions);
}
 
源代码5 项目: carina   文件: AbstractCapabilities.java
private DesiredCapabilities addFirefoxOptions(DesiredCapabilities caps) {
    FirefoxProfile profile = getDefaultFirefoxProfile();
    FirefoxOptions options = new FirefoxOptions().setProfile(profile);
    caps.setCapability(FirefoxOptions.FIREFOX_OPTIONS, options);

    // add all custom firefox args
    for (String arg : Configuration.get(Parameter.FIREFOX_ARGS).split(",")) {
        if (arg.isEmpty()) {
            continue;
        }
        options.addArguments(arg.trim());
    }
    // add all custom firefox preferences
    for (String preference : Configuration.get(Parameter.CHROME_EXPERIMENTAL_OPTS).split(",")) {
        if (preference.isEmpty()) {
            continue;
        }
        // TODO: think about equal sign inside name or value later
        preference = preference.trim();
        String name = preference.split("=")[0].trim();
        String value = preference.split("=")[1].trim();
        // TODO: test approach with numbers
        if ("true".equalsIgnoreCase(value) || "false".equalsIgnoreCase(value)) {
            options.addPreference(name, Boolean.valueOf(value));
        } else {
            options.addPreference(name, value);
        }
    }

    return caps;
}