Перейти к содержимому

Avicorn

Регистрация: 07 окт 2016
Offline Активность: 19 мая 2017 12:56
-----

Мои сообщения

В теме: Передача options в capabilities Chrome - WebDriverFactory

19 мая 2017 - 12:56

Столкнулся с аналогичной проблемой, моим решением стало доработать класс PropertyLoader

По сути делается тоже самое, добавляем в DesiredCapabilities ChromeOptions.CAPABILITY но не в базовом классе, как в варианте у топикстартера, а на этапе чтения опций, соответственно эти опции можно будет менять не пересобирая проект.

Для этого в стандартный 

for (String name : capsProps.stringPropertyNames()) {

}

 

добавляем ещё один else if:

 

else if (name.startsWith("chromeOptions")) {
    ChromeOptions options = new ChromeOptions();
    //read chrome args from *.capabilities
    options.addArguments(value);
    System.out.println(name + '=' + value);
    //staff chrome args in to DesiredCapabilities
    capabilities.setCapability(ChromeOptions.CAPABILITY, options);
}

 

теперь добавлением в chrome.capabilities строки chromeOptions=-disable-infobars можно убрать то самое сообщение, аналогично через пробел добавляются любые другие ключи.

Используя похожий подход можно научить драйвер читать ключи и для FF.