Logging

Per impostazione predefinita, ChromeDriver registra solo avvisi/errori per stderr. Durante il debug dei problemi, è utile abilitare un logging più dettagliato.

Per attivare il logging dettagliato, passa semplicemente --verbose al server chromedriver. Puoi anche passare --log-path per fare in modo che il log venga scritto in un file anziché in stderr. Se non avvii direttamente il server chromedriver, devi trasmettere lo switch tramite la libreria client WebDriver. Purtroppo alcuni clienti non hanno ancora un'opzione per farlo.

Quando passi --log-path al comando di avvio di Chrome, lo stderr su Chrome Linux e Mac viene salvato nel file di log. Tuttavia, lo stderr su Windows non viene salvato perché Chrome è un'applicazione GUI e il sistema operativo non consente di ereditare l'handle stderr da ChromeDriver. Per salvare stderr su Windows, Linux e Mac, puoi utilizzare la variabile di ambiente CHROME_LOG_FILE e il file conterrà solo i log di Chrome. Se specifichi logPath in ChromeOptions, ChromeDriver ne copierebbe il valore in CHROME_LOG_FILE.

Su Android non vengono acquisiti né stderr stdout. Lo stdout va nella finestra della console su tutte le piattaforme.

C#

var service = ChromeDriverService.CreateDefaultService();

service.LogPath = "D:\\chromedriver.log";

service.EnableVerboseLogging = true;

driver = new ChromeDriver(service);

È presente una versione sovraccaricata di entrambe le funzioni, consulta la documentazione dell'API.

Java

System.setProperty("webdriver.chrome.logfile", "D:\\chromedriver.log");

System.setProperty("webdriver.chrome.verboseLogging", "true");

Python

driver = webdriver.Chrome(executable_path="D:\\chromedriver.exe", service_args=["--verbose", "--log-path=D:\\qc1.log"])

Tutte le lingue

Avvia chromedriver dal prompt dei comandi o dal terminale con logging dettagliato utilizzando i flag:

--verbose --log-path=chromedriver.log

Esegui il test utilizzando un RemoteWebDriver che punta a http://localhost:9515.