כברירת מחדל, ב-ChromeDriver נרשמים רק אזהרות/שגיאות ל-stderr. בזמן ניפוי באגים, כדאי להפעיל רישום מפורט יותר ביומן.
כדי להפעיל רישום מפורט ביומן, פשוט מעבירים את --verbose
לשרת של chromedriver.
אפשר גם להעביר את --log-path
על מנת לגרום לכתיבה של היומן בקובץ במקום ב-stderr. אם לא תפעילו את שרת ה-chromedriver ישירות בעצמכם, תצטרכו להעביר את המתג דרך ספריית הלקוח של WebDriver. לצערנו, לחלק מהלקוחות עדיין אין אפשרות לעשות זאת.
כשמעבירים את --log-path
לפקודת ההפעלה של Chrome, ה-stderr ב-Chrome Linux וב-Mac יישמר בקובץ היומן. עם זאת, ה-stderr ב-Windows לא נשמר כי Chrome הוא אפליקציית GUI ומערכת ההפעלה לא מאפשרת לו לרשת את מזהה ה-stderr מ-ChromeDriver. כדי לשמור את ה-stderr ב-Windows, ב-Linux וב-Mac, תוכלו להשתמש במשתנה הסביבה CHROME_LOG_FILE
והקובץ יכיל רק יומנים מ-Chrome. אם מציינים LogPath ב-ChromeOptions, ChromeDriver יעתיק את הערך שלו ל-CHROME_LOG_FILE
.
stderr ו-stdout לא מתועדים ב-Android. ה-stdout מגיע לחלון המסוף בכל הפלטפורמות.
C#
var service = ChromeDriverService.CreateDefaultService();
service.LogPath = "D:\\chromedriver.log";
service.EnableVerboseLogging = true;
driver = new ChromeDriver(service);
קיימת גרסה עמוסה מדי של שתי הפונקציות, ניתן לעיין במסמכי התיעוד של ה-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"])
כל השפות
מפעילים את chromedriver בשורת הפקודה/טרמינל עם רישום מפורט ביומן באמצעות הדגלים:
--verbose --log-path=chromedriver.log
הפעל את הבדיקה באמצעות RemoteWebDriver שנמצא בכתובת http://localhost:9515.