Исключение в потоке "main" org.openqa.selenium.WebDriverException: не удалось подключиться к двоичному FirefoxBinary с помощью webdriver.firefox.marionette - PullRequest
0 голосов
/ 30 октября 2018
public class TestClass1 {
    public static void main(String[] args) {
        System.setProperty("webdriver.firefox.marionette","C:\\geckodriver.exe");

        WebDriver driver = new FirefoxDriver();
        driver.get("https://accounts.google.com/signin");

        driver.close();
        System.exit(0);
    }
}

Этот код приводит к следующему:

Exception in thread "main" org.openqa.selenium.WebDriverException: Failed to connect to binary FirefoxBinary(C:\Program Files\Mozilla Firefox\firefox.exe) on port 7055; process output follows: 

      [
        {
          "id":"{ec8030f7-c20a-464f-9b0e-13a3a9e97384}",
          "minVersion":"63.0","maxVersion":"63.*"
        }
      ],
      "targetPlatforms":[],
      "seen":true,
      "dependencies":[],
      "hasEmbeddedWebExtension":false,
      "userPermissions":null,
      "icons":{},
      "blocklistState":0,
      "blocklistURL":null,
      "startupData":null,
      "hidden":true,
      "location":"app-system-defaults"
    }

Ответы [ 2 ]

0 голосов
/ 31 октября 2018

При работе с Selenium 3.x , GeckoDriver и Firefox вам необходимо загрузить последнюю требуемую версию GeckoDriver с mozilla / geckodriver , извлеките его и укажите абсолютный путь двоичного кода GeckoDriver через System.setProperty() через Key webdriver.gecko.driver вместо webdriver.firefox.marionette следующим образом:

public class TestClass1 {

    public static void main(String[] args) {

    System.setProperty("webdriver.gecko.driver","C:\\path\\to\\geckodriver.exe");
    WebDriver driver = new FirefoxDriver();
    driver.get("https://accounts.google.com/signin");
    driver.quit();
    }
}

Примечание : всегда вызывайте driver.quit() в методе tearDown(){}, чтобы закрыть и уничтожить экземпляры WebDriver и Web Client изящно.

Поддерживаемые платформы

В следующей таблице показано соответствие между выпусками geckodriver, поддерживаемыми версиями Firefox и требуемой версией Selenium:

GeckoDriver_SupportedPlatforms_small

0 голосов
/ 30 октября 2018

Попробуйте это:

  1. Убедитесь, что у вас версия FF 63 (последняя из 30 октября 2018 года)
  2. Убедитесь, что ваша селеновая версия 3.14
  3. Убедитесь, что вы загрузили последнюю версию geckodriver 0.23 (https://github.com/mozilla/geckodriver/releases)
  4. Убедитесь, что geckodriver.exe находится в корне C: \\ (или измените путь ниже)
  5. Использование: System.setProperty("webdriver.gecko.driver", "C:\\geckodriver.exe");

Если это не работает, попробуйте понизить FF до предыдущей версии 62 и попробовать.

Между прочим, прочитайте это Разница между webdriver.firefox.marionette и webdriver.gecko.driver

Поддерживаемые версии: https://firefox -source-docs.mozilla.org / тестирование / geckodriver / geckodriver / Support.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...