Как указать путь к бинарному файлу firefox с помощью транспортира и марионетки?

Раньше я использовал directConnect и мог указать firefoxPath для запуска определенного двоичного файла. Теперь, когда directConnect больше не работает с Firefox > 47, я перехожу на использование марионетки, и firefoxPath больше не работает.

Вот так сейчас выглядит мой конфиг транспортира.

const firefox = require('selenium-webdriver/firefox');

const firefoxProfile = new firefox.Profile();

const config = {
  specs: ['e2e/scenarios.js'],
  seleniumAddress: 'http://localhost:4444/wd/hub',
  framework: 'jasmine',
};

switch (process.env.BROWSER) {
  case 'firefox':
    firefoxProfile.setPreference('media.navigator.permission.disabled', true);
    firefoxProfile.setPreference('media.navigator.streams.fake', true);
    firefoxProfile.setPreference('media.getusermedia.screensharing.allowed_domains',
      'localhost,adam.local');

    config.capabilities = {
      browserName: 'firefox',
      marionette: true,
      firefox_profile: firefoxProfile,
    };
    break;
  case 'chrome':
  default:
    config.capabilities = {
      browserName: 'chrome',
      chromeOptions: {
        args: ['auto-select-desktop-capture-source="Entire screen"',
          'use-fake-device-for-media-stream',
          'use-fake-ui-for-media-stream', 'disable-popup-blocking'],
        binary: process.env.BROWSERBIN,
      },
    };
    break;
}

exports.config = config;

Кажется, все это работает нормально, даже указывая настройки, но я не могу заставить работать двоичный файл браузера. Я пробовал firefoxPath и firefox_bin в возможностях. Ни то, ни другое не работает. Нужно ли указывать путь при запуске webdriver-manager сейчас, когда webdriver-manager запускает браузер?

Я использую транспортир 5.1.1, веб-драйвер-менеджер 12.0.2.


person Adam Ullman    schedule 21.02.2017    source источник


Ответы (1)


если вы используете последнюю версию firefox, вам нужно установить свойства для geckodriver ниже, это код в java

System.setProperty("webdriver.gecko.driver","D:\\Jar's\\geckodriver-v0.11.1-win64\\geckodriver.exe");
        driver = new FirefoxDriver();

Надеюсь, это поможет, если у вас есть какие-либо вопросы по этому поводу, пожалуйста, оставьте комментарий, рад помочь :)

person Dharam    schedule 21.02.2017
comment
Я хочу указать путь к двоичному файлу firefox, а не к драйверу геккона. Я также использую Protractor в Node, а не в Java. - person Adam Ullman; 23.02.2017