Как я могу обойти использование ChromeDrivers по умолчанию 'localhost' при поиске свободных портов? - PullRequest
0 голосов
/ 08 февраля 2019

Я пробую простую ChromeDriver инициализацию формы WebDriver driver = new ChromeDriver(); в Java.Однако это зависит от того, что на моем Mac localhost определено в /etc/hosts, что у меня нет разрешения.

Цепочка событий:

  1. аргумент свободенконструктор вызывает конструктор с ChromeDriverService.createDefaultService() в качестве зависимости
  2. createDefaultService() вызывает метод build() в DriverService.class
  3. Это в свою очередь вызывает PortProber.findFreePort()
  4. , который вызываетcheckPortIsFree() с жестко заданным localhost именем хоста ... это ловит IOException и возвращает -1, вероятно, из-за пустого файла hosts.

Импорт Maven равен

        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>

При импорте java import org.openqa.selenium.chrome.

Я хотел бы указать 127.0.0.1 в качестве хоста. - это способ создания ChromeDriver(ChromeDriverService service) и createDriverService метода с аргументами ... но конструктор ChromeDriverService с аргументами - это защищенный метод.Как я могу создать ChromeDriver с хостом 127.0.0.1?

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