2013-11-24 4 views
14

Я разрабатываю небольшое консольное приложение с использованием Selenium, и мне нужно отключить все журналы.Java PhantomJSDriver отключает все журналы в консоли

Я пробовал phantomJSDriver.setLogLevel(Level.OFF);, но он не работает. Мне нужна помощь.

Как отключить все журналы в консольном приложении, использующем Selenium и Phantomjs (GhostDriver)?

+0

Никто не знает? :( – user2598575

ответ

-2
PhantomJSDriverService service = new PhantomJSDriverService.Builder() 
     .usingPhantomJSExecutable(new File(VariableClass.phantomjs_file_path)) 
     .withLogFile(null) 
     .build(); 
+0

Это решение не сработало для меня – Torben

18

Это работает для меня.

DesiredCapabilities dcap = new DesiredCapabilities(); 
String[] phantomArgs = new String[] { 
    "--webdriver-loglevel=NONE" 
}; 
dcap.setCapability(PhantomJSDriverService.PHANTOMJS_CLI_ARGS, phantomArgs); 
PhantomJSDriver phantomDriver = new PhantomJSDriver(dcap); 
+0

Я использую тот же файл конфигурации, но он не работает, драйвер призрака все еще печатает весь журнал INFO на экране. Это мои строки конфигурации: phantomJSCaps.setCapability (PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARGS "--webdriver-LogLevel = NONE"); phantomJSCaps.setCapability (PhantomJSDriverService.PHANTOMJS_EXECUTABLE_PATH_PROPERTY, "/ USR/Lib/phantomjs/bin/phantomjs"); – tribbloid

+0

Я нашел это в исходном коде: * Примечание: Это полезно только при использовании вместе с PhantomJSDriverService # PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY. * Так что это не должно использоваться так. Но есть ли способ установить PHANTOMJS_GHOSTDRIVER_PATH_PROPERTY? – tribbloid

+0

Как-то он работает для меня, не устанавливая это свойство. Однако я вижу способ для установки [здесь] (https://github.com/detro/ghostdriver/issues/243). будь ты можешь попробовать. – Hery

3

Глядя на исходные файлы org.openqa.selenium.phantomjs.PhanomJSDriverService при отладке, я обнаружил, что это на самом деле не обращая внимания документированные уровни журнала для самой ghostdriver. Выполнение этого отключает большую часть продукции ghostdriver:

Logger.getLogger(PhantomJSDriverService.class.getName()).setLevel(Level.OFF); 

Кажется, что GhostDriver должны быть обновлены, чтобы не войти, когда

phantomJSCaps.setCapability(PhantomJSDriverService.PHANTOMJS_GHOSTDRIVER_CLI_ARG‌​S, "--webdriver-loglevel=NONE"); 

используется.

Смежные вопросы