Theo mặc định, ChromeDriver chỉ ghi lại các cảnh báo/lỗi vào stderr. Khi gỡ lỗi các vấn đề cụ thể, sẽ rất hữu ích nếu bạn cho phép 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 truyề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
của stderr. Nếu không tự khởi động trực tiếp máy chủ chromedriver, bạn
cần truyền nút chuyển qua thư viện ứng dụng WebDriver. Một số khách hàng không
nhưng rất tiếc, họ vẫn có tuỳ chọn cho tính năng này.
Khi truyền --log-path
đến lệnh chạy Chrome, thiết bị chuẩn trên Chrome Linux
và máy Mac sẽ được lưu trong tệp nhật ký. Tuy nhiên, giao diện chuẩn trên Windows không phải là
đã được lưu vì Chrome là một ứng dụng GUI (Giao diện người dùng đồ hoạ) và hệ điều hành không cho phép ứng dụng này kế thừa
xử lý thiết bị chuẩn từ ChromeDriver. Để lưu chuẩn 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 biến đó vào CHROME_LOG_FILE
.
Cả stderr và stdout đều không được ghi lại trên Android. Thiết bị chuẩn chuyển sang 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ả hai hàm đều có phiên bản nạp chồng, 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 chromedriver trong lời nhắc/kết thúc lệnh bằng tính năng ghi nhật ký chi tiết bằng cách sử dụng cờ:
--verbose --log-path=chromedriver.log
Chạy kiểm thử bằng RemoteWebDriver trỏ tới http://localhost:9515.