Загрузите старую версию Headless Chrome как chrome-headless-shell.

Ранее в этом году мы объявили о доступности нового режима Chrome Headless ( --headless=new ) в Chrome 112. Этот режим позволяет разработчикам запускать Chrome в автоматической среде без видимого пользовательского интерфейса, что полезно для тестирования и автоматизации.

В рамках этого объявления мы упомянули о наших планах удалить старый режим Headless из двоичного файла Chrome. Это удаление имеет смысл, поскольку старый Headless технически является отдельным браузером, то есть мы в настоящее время поставляем два двоичных файла браузера в одном. В то же время мы признаем, что существуют различные варианты использования для старого и нового режимов Headless:

  1. Старый режим Headless — это облегченная оболочка вокруг модуля Chromium //content , и поэтому у него существенно меньше зависимостей. В частности, он не требует X11/Wayland, D-Bus и в некоторых отношениях более производительный, чем полноценный браузер Chrome. Это делает его пригодным для таких случаев использования, как автоматическое создание скриншотов или веб-скрапинг.
  2. С другой стороны, New Headless — это настоящий браузер Chrome, и, таким образом, он более аутентичен, надежен и предлагает больше функций. Это делает его более подходящим для высокоточного сквозного тестирования веб-приложений или тестирования расширений браузера.

Другими словами, есть компромисс между производительностью и аутентичностью. Какой режим Headless вам больше всего подходит? Это зависит от вашего варианта использования.

Диаграмма, иллюстрирующая информацию, приведенную в предыдущем списке.

Разработчики и тестировщики, которым не требуется полная функциональность Chrome для своих сценариев автоматизации, могут захотеть использовать старый Headless. В противном случае, новый Headless, вероятно, будет лучшим выбором.

Чтобы разработчики и тестировщики могли продолжать выбирать между этими двумя вариантами, мы рады объявить, что старая реализация Headless теперь доступна как отдельный двоичный файл chrome-headless-shell . Эти новые двоичные файлы chrome-headless-shell генерируются для каждого выпуска Chrome, обращенного к пользователю, и доступны для загрузки через инфраструктуру Chrome for Testing, начиная с Chrome 120.

Как получить двоичные файлы chrome-headless-shell ?

Как и в случае с другими бинарниками Chrome для тестирования, самый простой способ загрузить 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 предлагает конечные точки JSON API с последними доступными версиями для каждого канала выпуска Chrome (Stable, Beta, Dev и Canary). Чтобы получить краткий обзор последнего статуса, обратитесь к панели доступности Chrome for Testing .

Обратная связь

Мы с нетерпением ждем ваших отзывов о chrome-headless-shell . Если у вас возникнут какие-либо проблемы, пожалуйста, сообщите о них .

,

Ранее в этом году мы объявили о доступности нового режима Chrome Headless ( --headless=new ) в Chrome 112. Этот режим позволяет разработчикам запускать Chrome в автоматической среде без видимого пользовательского интерфейса, что полезно для тестирования и автоматизации.

В рамках этого объявления мы упомянули о наших планах удалить старый режим Headless из двоичного файла Chrome. Это удаление имеет смысл, поскольку старый Headless технически является отдельным браузером, то есть мы в настоящее время поставляем два двоичных файла браузера в одном. В то же время мы признаем, что существуют различные варианты использования для старого и нового режимов Headless:

  1. Старый режим Headless — это облегченная оболочка вокруг модуля Chromium //content , и поэтому у него существенно меньше зависимостей. В частности, он не требует X11/Wayland, D-Bus и в некоторых отношениях более производительный, чем полноценный браузер Chrome. Это делает его пригодным для таких случаев использования, как автоматическое создание скриншотов или веб-скрапинг.
  2. С другой стороны, New Headless — это настоящий браузер Chrome, и, таким образом, он более аутентичен, надежен и предлагает больше функций. Это делает его более подходящим для высокоточного сквозного тестирования веб-приложений или тестирования расширений браузера.

Другими словами, есть компромисс между производительностью и аутентичностью. Какой режим Headless вам больше всего подходит? Это зависит от вашего варианта использования.

Диаграмма, иллюстрирующая информацию, приведенную в предыдущем списке.

Разработчики и тестировщики, которым не требуется полная функциональность Chrome для своих сценариев автоматизации, могут захотеть использовать старый Headless. В противном случае, новый Headless, вероятно, будет лучшим выбором.

Чтобы разработчики и тестировщики могли продолжать выбирать между этими двумя вариантами, мы рады объявить, что старая реализация Headless теперь доступна как отдельный двоичный файл chrome-headless-shell . Эти новые двоичные файлы chrome-headless-shell генерируются для каждого выпуска Chrome, обращенного к пользователю, и доступны для загрузки через инфраструктуру Chrome for Testing, начиная с Chrome 120.

Как получить двоичные файлы chrome-headless-shell ?

Как и в случае с другими бинарниками Chrome для тестирования, самый простой способ загрузить 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 предлагает конечные точки JSON API с последними доступными версиями для каждого канала выпуска Chrome (Stable, Beta, Dev и Canary). Чтобы получить краткий обзор последнего статуса, обратитесь к панели доступности Chrome for Testing .

Обратная связь

Мы с нетерпением ждем ваших отзывов о chrome-headless-shell . Если у вас возникнут какие-либо проблемы, пожалуйста, сообщите о них .