Logowanie

Domyślnie ChromeDriver rejestruje w stderr tylko ostrzeżenia/błędy. Podczas debugowania problemów warto włączyć bardziej szczegółowe logowanie.

Aby włączyć szczegółowe logowanie, po prostu przekaż plik --verbose do serwera chromedriver. Możesz też przekazać żądanie --log-path, aby dziennik został zapisany w pliku zamiast w stderr. Jeśli nie uruchomisz bezpośrednio serwera chromedriver, musisz przekazać przełącznik przez bibliotekę klienta WebDriver. Niektórzy klienci nie mogą jeszcze tego robić.

Podczas przekazywania polecenia --log-path do polecenia uruchamiania Chrome plik stderr w Chrome Linux i na Macu zostanie zapisany w pliku dziennika. Plik stderr w systemie Windows nie jest jednak zapisywany, ponieważ Chrome jest aplikacją GUI, a system operacyjny nie zezwala na dziedziczenie uchwytu stderr z ChromeDriver. Aby zapisać plik stderr w systemach Windows, Linux i Mac, możesz użyć zmiennej środowiskowej CHROME_LOG_FILE. Plik będzie zawierać tylko dzienniki Chrome. Jeśli podasz logPath w ChromeOptions, ChromeDriver skopiuje jego wartość do CHROME_LOG_FILE.

Android nie rejestruje ani stderr, ani stdout. Trafia on do okna konsoli na wszystkich platformach.

C#

var service = ChromeDriverService.CreateDefaultService();

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

service.EnableVerboseLogging = true;

driver = new ChromeDriver(service);

Obie funkcje są przeciążone. Więcej informacji znajdziesz w dokumentacji interfejsu 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"])

Wszystkie języki

Uruchom chromedriver w wierszu poleceń lub w terminalu ze szczegółowym logowaniem, korzystając z flag:

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

Uruchom test, używając obiektu RemoteWebDriver o adresie http://localhost:9515.