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 desacompanhado sem nenhuma interface visível, o que é útil para casos de uso de teste e automação.
Como parte desse anúncio, mencionamos nossos planos de remover o modo headless antigo do binário do Chrome. Essa remoção faz sentido, já que o antigo Headless é tecnicamente um navegador separado, o que significa que estamos enviando dois binários de navegador em um. Ao mesmo tempo, reconhecemos que há casos de uso distintos para o antigo e o novo modo 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, de certa forma, tem melhor desempenho do que o navegador Chrome completo. Isso o torna adequado para casos de uso como capturas de tela automatizadas ou extração de dados da Web. - O New Headless, por outro lado, é o navegador Chrome real, mais autêntico, confiável e com mais recursos. Isso o torna mais adequado para testes de aplicativos da Web ou extensões de navegador de ponta a ponta com alta precisão.
Em outras palavras, há uma compensação entre desempenho e autenticidade. Qual modo sem cabeça é 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 usar o Headless antigo. Caso contrário, o novo Headless provavelmente é a melhor escolha.
Para garantir que os desenvolvedores e testadores continuem a escolher entre essas duas opções, anunciamos que a antiga implementação do Headless agora está disponível como um binário chrome-headless-shell
independente. Esses novos binários chrome-headless-shell
são gerados para todas as versões do Chrome voltadas ao usuário e estão disponíveis para download na infraestrutura do Chrome para testes a partir do Chrome 120.
Como posso conseguir os binários chrome-headless-shell
?
Assim como em outros binários do Chrome for Testing, a maneira mais fácil de fazer o download do chrome-headless-shell
para sua plataforma é usando o nosso utilitário de linha de comando @puppeteer/browsers
, disponível usando 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 chrome-headless-shell
, temos a solução. 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 para Testes.
Feedback
Aguardamos seu feedback sobre chrome-headless-shell
. Se você encontrar algum problema, informe-nos.