How do I disable Firefox logging in Selenium using Geckodriver?
To not see the logs in the console you can use the following:
System.setProperty("webdriver.gecko.driver","src/main/resources/drivers/geckodriver.exe");System.setProperty(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE,"true");System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE,"/dev/null");return new FirefoxDriver();
You can define the desired logging level over command line in geckodriver.exe.
geckodriver.exe -help USAGE: geckodriver.exe [FLAGS] [OPTIONS] ...OPTIONS: --log <LEVEL> Set Gecko log level [values: fatal, error, warn, info, config, debug, trace]
If you use geckodriver from selenium, you have two option:
- Start geckodriver.exe separately with custom arguments, and use it from selenium over RemoteWebDriver
- Create a custom wrapper, to add extra parameters to geckodriver.exe
Example geckodriver wrapper bat file (for windows):
@ECHO OFFECHO Starting geckodriver: %0 %*.\GeckoDriver\geckodriver.exe --log fatal %* > NUL 2>&1
In java you can define the geckodriver executable path, over webdriver.gecko.driver system property:
System.setProperty("webdriver.gecko.driver", "c:/selenium/geckodriver/gdrvwrapper.bat");
Just do this
System.setProperty(FirefoxDriver.SystemProperty.DRIVER_USE_MARIONETTE,"true");System.setProperty(FirefoxDriver.SystemProperty.BROWSER_LOGFILE,"/dev/null");driver = new FirefoxDriver();