מוקדם יותר השנה הודענו על הזמינות של מצב 'ללא GUI' החדש של Chrome (--headless=new
) ב-Chrome 112. המצב הזה מאפשר למפתחים להריץ את Chrome בסביבה ללא השגחה ללא ממשק משתמש גלוי. מצב זה שימושי לתרחישים לדוגמה של בדיקה ואוטומציה.
במסגרת ההודעה הזו, הזכרנו את התוכניות שלנו להסיר את מצב Headless הישן מהבינארי של Chrome. צריך להסיר את התוכן הזה, כי הממשק הקודם של Headless הוא דפדפן נפרד מבחינה טכנית. כרגע אנחנו שולחים כרגע שני קבצים בינאריים של דפדפן אחד. עם זאת, אנחנו מודעים לכך שיש תרחישים שונים לדוגמה עבור המצב הישן ומצב 'דפדפן ללא GUI':
- מצב Headless הישן הוא wrapper קל מסביב למודול
//content
של Chromium, ולכן יש לו פחות יחסי תלות באופן משמעותי. ליתר דיוק, לא נדרש שימוש ב-X11/Wayland ו-D-Bus, ובמקומות מסוימים הוא מניב ביצועים טובים יותר מאשר דפדפן Chrome עם כל הדרישות. כך הוא מתאים לתרחישים לדוגמה כמו צילום מסך אוטומטי או העתקה מהאינטרנט. - לעומת זאת, דפדפן Chrome החדש הוא דפדפן Chrome האמיתי, ולכן הוא אותנטי ואמין יותר ומציע יותר תכונות. כך הוא מתאים יותר לביצוע בדיקות ברמת דיוק גבוהה של אפליקציות אינטרנט או בדיקות של תוספי דפדפן.
במילים אחרות, אפשר לשלב בין ביצועים לבין אותנטיות. איזה מצב 'דפדפן ללא GUI' הכי מתאים לכם? הפעולה הזו תלויה בתרחיש לדוגמה שלכם.
מפתחים ובודקים שלא צריכים את הפונקציונליות המלאה של Chrome בתרחישי האוטומציה שלהם עשויים לרצות להשתמש בגרסה הישנה של Headless. אחרת, סביר להניח שגרסה חדשה של Headless היא האפשרות הטובה ביותר.
כדי לוודא שהמפתחים והבודקים יוכלו להמשיך לבחור מבין שתי האפשרויות האלה, אנחנו שמחים להודיע שההטמעה הישנה של Headless זמינה עכשיו כקובץ בינארי עצמאי של chrome-headless-shell
. הקבצים הבינאריים האלה מסוג chrome-headless-shell
נוצרים לכל גרסה של Chrome שגלויה למשתמשים, והם זמינים להורדה דרך תשתית Chrome for Testing החל מגרסה 120 של Chrome.
איך אפשר לקבל קבצים בינאריים של chrome-headless-shell
?
כמו בקבצים הבינאריים האחרים של Chrome for Testing, הדרך הקלה ביותר להוריד את chrome-headless-shell
לפלטפורמה שלכם היא באמצעות כלי שורת הפקודה @puppeteer/browsers
שלנו, שזמין באמצעות npm
. הנה כמה דוגמאות:
# Download the latest available `chrome-headless-shell` binary corresponding to the Stable channel.
npx @puppeteer/browsers install chrome-headless-shell@stable
# Download a specific `chrome-headless-shell` version.
npx @puppeteer/browsers install chrome-headless-shell@120.0.6098.0
אם ברצונך ליצור סקריפטים אוטומטיים משלך להורדת קבצים בינאריים של chrome-headless-shell
, זה הכול. ב-Chrome for Testing יש נקודות קצה ל-API בפורמט JSON עם הגרסאות העדכניות ביותר לכל ערוץ הפצה של Chrome (יציב, בטא, Dev ו-Canary). כדי לקבל סקירה כללית קצרה של הסטטוס העדכני, אפשר לעיין במרכז הבקרה לזמינות של Chrome for Testing.
משוב
נשמח לקבל ממך משוב לגבי chrome-headless-shell
. אם נתקלים בבעיות, אפשר לדווח עליהן.