Depurar no modo headless

Peter Kvitek
Peter Kvitek

Como o Chrome fica invisível no modo headless, pode parecer complicado resolver um problema. É possível depurar a versão headless do Chrome de uma maneira muito semelhante ao Chrome com interface.

Inicie o Chrome no modo headless com a flag de linha de comando --remote-debugging-port.

chrome --headless --remote-debugging-port=0 https://developer.chrome.com/

Isso imprime um URL WebSocket exclusivo para stdout, por exemplo:

DevTools listening on ws://127.0.0.1:60926/devtools/browser/b4bd6eaa-b7c8-4319-8212-225097472fd9

Em uma instância do Chrome com interface, podemos usar o Chrome DevTools remote debugging para nos conectar ao destino headless e inspecioná-lo.

  1. Acesse chrome://inspect e clique no botão Configurar….
  2. Insira o endereço IP e o número da porta do URL do WebSocket, por exemplo, 127.0.0.1:60926.
  3. Clique em Concluído. Um destino remoto vai aparecer com todas as guias e outros destinos listados.
  4. Clique em inspecionar para acessar o Chrome DevTools e inspecionar o destino headless remoto, incluindo uma visualização ao vivo da página.

O Chrome DevTools pode inspecionar uma página de destino headless remota.