No início deste ano, anunciamos a disponibilidade do novo modo headless do Chrome (--headless=new
) no Chrome 112. Esse modo permite que os desenvolvedores executem o Chrome em um ambiente autônomo sem nenhuma interface visível, útil para casos de uso de teste e automação.
Como parte deste anúncio, mencionamos nossos planos para remover o antigo modo headless do binário do Chrome. Essa remoção faz sentido, já que o antigo Headless é tecnicamente um navegador separado. Isso significa que estamos enviando dois binários de navegador em um. Ao mesmo tempo, reconhecemos que há casos de uso distintos para o modo antigo e o novo headless:
- O antigo modo headless é um wrapper leve em torno do módulo
//content
do Chromium e, portanto, tem muito menos dependências. Especificamente, ele não requer X11/Wayland, D-Bus e, em alguns aspectos, tem um desempenho melhor do que o completo navegador Chrome. Isso a torna adequada para casos de uso como captura de tela automatizada ou captura da Web. - Por outro lado, o novo Headless é o verdadeiro navegador Chrome e, por isso, é mais autêntico, confiável e oferece mais recursos. Isso o torna mais adequado para testes completos de apps da Web ou testes de extensões de navegador com alta precisão.
Em outras palavras, há uma compensação entre desempenho e autenticidade. Qual é o modo headless mais adequado para você? Depende do seu caso de uso.
Os desenvolvedores e testadores que não precisam da funcionalidade completa do Chrome para os casos de uso de automação podem querer usar a versão antiga do Headless. Caso contrário, o novo Headless provavelmente é a melhor escolha.
Para garantir que desenvolvedores e testadores possam escolher entre essas duas opções, anunciamos que a implementação antiga headless agora está disponível como um binário chrome-headless-shell
autônomo. Esses novos binários chrome-headless-shell
são gerados para cada versão do Google Chrome voltada ao usuário e estão disponíveis para download por meio da infraestrutura do Google Chrome for Testing a partir do Chrome 120.
Como posso ter acesso a binários chrome-headless-shell
?
Assim como acontece com outros binários do Chrome for Testing, a maneira mais fácil de fazer o download do chrome-headless-shell
para sua plataforma é usando nosso utilitário de linha de comando @puppeteer/browsers
, disponível com npm
. Veja alguns exemplos:
# 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
Se você preferir criar seus próprios scripts automatizados para fazer o download de binários do chrome-headless-shell
, podemos ajudar. O Chrome for Testing oferece endpoints da API JSON com as versões mais recentes disponíveis por canal de lançamento do Chrome (Stable, Beta, Dev e Canary). Para ter uma visão geral rápida do status mais recente, consulte o painel de disponibilidade do Chrome for Testing.
Feedback
Esperamos seu feedback sobre chrome-headless-shell
. Se você tiver algum problema, informe-o.