ดาวน์โหลด Headless Chrome แบบเก่าเป็น Chrome-headless-shell

เมื่อต้นปีนี้ เราได้ประกาศความพร้อมใช้งานของโหมด Headless ใหม่ของ Chrome (--headless=new) ใน Chrome 112 โหมดนี้ช่วยให้นักพัฒนาแอปเรียกใช้ Chrome ในสภาพแวดล้อมที่ไม่มีผู้ดูแลได้โดยไม่ต้องมี UI ที่มองเห็นได้ ซึ่งมีประโยชน์สำหรับกรณีการใช้งานการทดสอบและการทํางานอัตโนมัติ

ในการประกาศครั้งนี้ เราได้พูดถึงแผนของเราที่จะนำโหมด Headless เวอร์ชันเก่าออกจากไบนารีของ Chrome การนําออกนี้มีความเหมาะสม เนื่องจาก Headless เวอร์ชันเก่าเป็นเบราว์เซอร์แยกต่างหากในทางเทคนิค ซึ่งหมายความว่าตอนนี้เรากําลังจัดส่งไบนารีเบราว์เซอร์ 2 รายการในรายการเดียว ในขณะเดียวกัน เราตระหนักดีว่าโหมดไม่มีส่วนหัวเวอร์ชันเก่าและเวอร์ชันใหม่มีกรณีการใช้งานที่แตกต่างกัน

  1. โหมด Headless แบบเก่าเป็น Wrapper น้ำหนักเบารอบๆ โมดูล //content ของ Chromium จึงมีทรัพยากรที่ต้องพึ่งพาน้อยกว่ามาก กล่าวโดยละเอียดคือ ไม่จำเป็นต้องใช้ X11/Wayland, D-Bus และมีประสิทธิภาพมากกว่าเบราว์เซอร์ Chrome เวอร์ชันเต็มในบางด้าน ซึ่งทำให้เหมาะสําหรับกรณีการใช้งาน เช่น ภาพหน้าจออัตโนมัติหรือการคัดลอกข้อมูลเว็บ
  2. ในทางกลับกัน Headless เวอร์ชันใหม่คือเบราว์เซอร์ Chrome จริง จึงมีความน่าเชื่อถือ ถูกต้อง และมาพร้อมฟีเจอร์มากกว่า ซึ่งเหมาะสําหรับการทดสอบเว็บแอปจากต้นทางถึงปลายทางที่แม่นยําสูงหรือการทดสอบส่วนขยายเบราว์เซอร์

กล่าวคือ ประสิทธิภาพและความน่าเชื่อถือต้องแลกมาด้วยกัน โหมด Headless ใดเหมาะกับคุณมากที่สุด ขึ้นอยู่กับกรณีการใช้งานของคุณ

แผนภาพที่แสดงข้อมูลที่ระบุไว้ในรายการก่อนหน้า

นักพัฒนาซอฟต์แวร์และผู้ทดสอบที่ไม่ต้องใช้ฟังก์ชันการทำงานทั้งหมดของ Chrome สำหรับกรณีการใช้งานแบบอัตโนมัติอาจต้องการใช้ Headless แบบเก่า ไม่เช่นนั้น Headless เวอร์ชันใหม่อาจเป็นตัวเลือกที่ดีที่สุด

เรายินดีที่จะประกาศว่าการใช้งาน Headless แบบเก่าพร้อมใช้งานเป็นไฟล์ chrome-headless-shell เดี่ยวแล้ว เพื่อให้นักพัฒนาซอฟต์แวร์และผู้ทดสอบมีตัวเลือกระหว่าง 2 ตัวเลือกนี้ต่อไป ระบบจะสร้างไบนารี chrome-headless-shell ใหม่เหล่านี้สำหรับ Chrome ทุกรุ่นที่แสดงต่อผู้ใช้ และสามารถดาวน์โหลดได้ผ่านโครงสร้างพื้นฐานของ Chrome สำหรับทดสอบโดยเริ่มจาก Chrome 120

ฉันจะรับไบนารี 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 สําหรับการทดสอบมีปลายทาง JSON API เวอร์ชันล่าสุดที่ใช้ได้ในแต่ละช่องทางการเผยแพร่ของ Chrome (เวอร์ชันเสถียร เบต้า เวอร์ชันที่กำลังพัฒนา และ Canary) หากต้องการดูภาพรวมคร่าวๆ ของสถานะล่าสุด โปรดดูหน้าแดชบอร์ดความพร้อมให้บริการของ Chrome สำหรับทดสอบ

ความคิดเห็น

เราหวังว่าจะได้รับฟังความคิดเห็นจากคุณเกี่ยวกับ chrome-headless-shell หากพบปัญหา โปรดรายงานปัญหา