How to obtain native logger in Selenium WebDriver

0
0

Is it possible to obtain the logger somehow that Selenium WebDriver uses? I want to capture a transcript of all the commands that were issued (eg: open, wait, click, etc). In particular I am looking for a java solution, as I am exporting the tests into junit.

I found this code on their website, however it displays nothing on standard out

    DesiredCapabilities caps = DesiredCapabilities.firefox(); 
LoggingPreferences logs = new LoggingPreferences();
logs
.enable(LogType.DRIVER, Level.FINEST);
caps
.setCapability(CapabilityType.LOGGING_PREFS, logs);
driver
= new FirefoxDriver(caps);
  • You must to post comments
0
0

Enable logging in the driver you’re using, select which log types you’re interested in and the log level (I’m using FirefoxDriver, enabling all types of logs and collecting all log messages)

LoggingPreferences logs = new LoggingPreferences();
logs
.enable(LogType.BROWSER, Level.ALL);
logs
.enable(LogType.CLIENT, Level.ALL);
logs
.enable(LogType.DRIVER, Level.ALL);
logs
.enable(LogType.PERFORMANCE, Level.ALL);
logs
.enable(LogType.PROFILER, Level.ALL);
logs
.enable(LogType.SERVER, Level.ALL);
DesiredCapabilities desiredCapabilities = DesiredCapabilities.firefox();
desiredCapabilities
.setCapability(CapabilityType.LOGGING_PREFS, logs);
WebDriver driver = new FirefoxDriver(desiredCapabilities);

Then, after running the test you can collect the logs (I’m only collecting the DRIVER logs, but you can do the same for any type of log)

Logs logs = driver.manage().logs();
LogEntries logEntries = logs.get(LogType.DRIVER);
for (LogEntry logEntry : logEntries) {
System.out.println(logEntry.getMessage());
}
  • You must to post comments
Showing 1 result
Your Answer
Post as a guest by filling out the fields below or if you already have an account.
Name*
E-mail*
Website