Qué es Lighthouse de Google y cómo realizar tests en una PWA | PWA Experts I/O

Qué es Lighthouse de Google y cómo realizar tests en una PWA

Lighthouse es una herramienta automatizada de código abierto diseñada para mejorar la calidad de tus apps web.

Así define Google esta brutal herramienta que nos ayuda de forma rápida y fácil a realizar varios test en nuestra web para poder, entre otras cosas, comprobar si cumple o no con las premisas para ser una PWA.

GIF

Lighthouse es una herramienta de código abierto integrada en Google Chrome a partir de su versión 52, que hace posible realizar un auditado automatizado de un sitio web.

Actualmente disponemos de dos formas de instalarlo, mediante una extensión para Chrome o mediante línea de comandos con NPM permitiendo integrar Lighthouse en sistemas de integración continua.

Cómo instalar Lighthouse en Chrome

Para instalar Lighthouse en nuestro navegador Google Chrome, tan sólo tendremos que acceder este enlace e instalarlo como cualquier otra extensión.

Extensión Lighthouse en Google

Una vez instalada la extensión nos aparecerá un nuevo icono en la barra de herramientas del navegador en el que haremos click para, con un sólo click, lanzar el test en la web que estemos visualizando.

Extensión Lighthouse en Google Icono

Al finalizar dicho test nos lanzará un navegador Chrome nuevo con el resultado del mismo en que podremos ver datos relacionados con el performance, la accesibilidad, las buenas prácticas, el SEO de la web, y en qué porcentaje cumple con las premisas para ser una PWA.

Extensión Lighthouse en Google Resultado

En este vídeo podéis ver que ocurre al ejecutar Lighthouse en la propia web de Google

Extensión Lighthouse en la web de Google

Por último comentaros que la herramienta nos permite customizar hasta donde queremos que el test llegue, además de poder activar o desactivar algunas de sus opciones como podéis ver en la siguiente imagen.

Extensión Lighthouse Google custom

Cómo instalar Lighthouse desde NPM

Para los amantes de la línea de comandos también hay una solución mediante NPM, con la que podemos ejecutar Lighthouse de forma automática cuando nos sea necesario.

Lo primero que debemos realizar es instalar mediante NPM el paquete Lighthouse que podemos encontrar en el siguiente enlace.


  sudo npm install -g lighthouse
NPM Lighthouse Google install

Lo siguiente será ejecutar el comando lighthouse desde línea de comando haciendo referencia a la url en la que queremos realizar el test.


  lighthouse https://www.google.es/
NPM Lighthouse Google install

Y al finalizar nos generará un archivo html de reporte en el que podremos visualizar los resultados del test.

NPM Lighthouse Google install

Os dejo también por aquí una recopilación de flags que podéis utilizar a la hora de implementar esta herramienta en un proyecto y que por ahora están disponible mediante el CLI.

CLI FlagDescription
portThe port to use for the debugging protocol.
chromeFlagsCustom flags to pass to Chrome.
outputPathThe file path to output the results.
saveAssetsSave the trace & devtools log to disk.
viewOpen HTML report in your browser.
listAllAuditsPrints a list of all available audits.
verboseDisplays verbose logging.
quietDisplays no progress, debug logs or errors.

Lo que no vemos de Lighthouse

En la siguiente imagen podéis ver como funciona esta herramienta por detrás. Su arquitectura define varios estados y procesos que no vemos a simple vista y que nos ayuda a comprender todo el trabajo que realiza por nosotros.

Lighthouse Arquitectura

Lighthouse en integración continua

Por si todo esto fuera poco, podemos integrar Lighthouse mediante integración continua para que en el momento en que realicemos un análisis de nuestra web y/o desarrollemos un proyecto con un equipo de developers, podamos auditar el proyecto.

En mi caso trabajo con GitHub como repositorio y me ha parecido muy interesante la documentación que he encontrado de cómo integrar Lighthouse en el pipeline de Github. Ver enlace.

Lighthouse CI

Recomendaciones

Más información

#PWA#Lighthouse#Google

Para dejar tu comentarios debes pertenecer a la Comunidad.

Entra en la Comunidad

¿Quieres aprender sobre las PWAs, colaborar en el desarrollo de la plataforma, redactar artículos, publicar tutoriales y mucho más? Únete a la Comunidad PWA Experts I/O.

WIP: Work in Progress

Estas son las próximas mejoras que presentaremos en la Comunidad, ¿te apetece colaborar?

  • 🔚 Incluir resumen de los features de las PWA por navegador.
  • 🔚 Agregar avisos vía email con las respuestas en los hilos del foro.
  • 🔜 Implementación del Service Workers.
  • 🔜 Newsletters.