Déboguer en mode headless

Peter Kvitek
Peter Kvitek

Comme Chrome est invisible en mode headless, il peut sembler difficile de résoudre un problème. Il est possible de déboguer Headless Chrome d'une manière très similaire à Chrome avec interface graphique.

Lancez Chrome en mode headless avec l'indicateur de ligne de commande --remote-debugging-port.

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

Cela affiche une URL WebSocket unique dans stdout, par exemple :

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

Dans une instance Chrome avec interface graphique, nous pouvons ensuite utiliser le débogage à distance des outils pour les développeurs Chrome pour nous connecter à la cible headless et l'inspecter.

  1. Accédez à chrome://inspect et cliquez sur le bouton Configurer….
  2. Saisissez l'adresse IP et le numéro de port de l'URL WebSocket, par exemple 127.0.0.1:60926.
  3. Cliquez sur OK. Une cible à distance doit s'afficher avec tous ses onglets et autres cibles.
  4. Cliquez sur Inspecter pour accéder aux outils pour les développeurs Chrome et inspecter la cible headless à distance, y compris une vue en direct de la page.

Les outils pour les développeurs Chrome peuvent inspecter une page cible Headless à distance.