Ghi nhật ký

Theo mặc định, ChromeDriver chỉ ghi lại cảnh báo/lỗi trong stderr. Khi gỡ lỗi, bạn nên bật tính năng ghi nhật ký chi tiết hơn.

Để bật tính năng ghi nhật ký chi tiết, bạn chỉ cần chuyển --verbose đến máy chủ chromedriver. Bạn cũng có thể truyền --log-path để ghi nhật ký vào một tệp thay vì ghi stderr. Nếu không tự khởi động trực tiếp máy chủ chromedriver, bạn cần chuyển nút chuyển qua thư viện ứng dụng WebDriver. Rất tiếc, một số ứng dụng chưa có lựa chọn này.

Khi chuyển --log-path vào lệnh khởi chạy Chrome, thông báo lỗi trên Chrome Linux và Mac sẽ được lưu trong tệp nhật ký. Tuy nhiên, stderr trên Windows không được lưu vì Chrome là một ứng dụng GUI và hệ điều hành không cho phép ứng dụng kế thừa tên người dùng stderr từ ChromeDriver. Để lưu stderr trên Windows, Linux và Mac, bạn có thể sử dụng biến môi trường CHROME_LOG_FILE và tệp sẽ chỉ chứa nhật ký từ Chrome. Nếu bạn chỉ định logPath trong ChromeOptions, ChromeDriver sẽ sao chép giá trị của luồng này vào CHROME_LOG_FILE.

Cả stderr và stdout đều không được ghi lại trên Android. Mã stdout sẽ chuyển đến cửa sổ bảng điều khiển trên tất cả các nền tảng.

C#

var service = ChromeDriverService.CreateDefaultService();

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

service.EnableVerboseLogging = true;

driver = new ChromeDriver(service);

Có phiên bản nạp chồng của cả hai hàm, hãy xem tài liệu về 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"])

Tất cả ngôn ngữ

Khởi động trình điều khiển chrome trong dấu nhắc/cửa sổ dòng lệnh với tính năng ghi nhật ký chi tiết bằng các cờ:

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

Chạy kiểm thử bằng RemoteWebDriver tại http://localhost:9515.