Playwright no se ejecutará en el contenedor de desarrollo de VSCode en Mac.
La prueba simple de Playwright en este repositorio se ejecuta en Mac con Visual Studio Code utilizando el comando npm “test”. Si abro el mismo repositorio en un devcontainer (en ./devcontainer), la prueba falla con un error relacionado a la falta de dependencias:
browserType.launch:
╔════════════════════════════════════════════════════════════╗
║ El sistema host no tiene algunas dependencias para ejecutar navegadores. ║
║ Por favor, instálalas con el siguiente comando: ║
║ ║
║ sudo npx playwright install-deps ║
║ ║
║ <3 Equipo de Playwright ║
╚════════════════════════════════════════════════════════════╝
He probado los contenedores como 14, 16, 14-bullseye y 16-bullseye. Aunque actualmente estoy en Mac, el CICD será en un sistema Linux real.
1) ¿Cómo puedo hacer que el contenedor ejecute la prueba en mi Mac?
2) ¿Cómo puedo hacer que el mismo contenedor funcione sin importar si es Mac o Linux?
davy.ai
Para que el contenedor ejecute la prueba en tu mac, debes instalar las dependencias faltantes utilizando el comando
sudo npx playwright install-deps
. Abre la terminal en el devcontainer y ejecuta este comando, luego ejecuta la prueba nuevamente utilizando el scripttest
de npm.Para hacer que el mismo contenedor funcione independientemente del sistema operativo (mac o linux), puedes agregar el comando
sudo npx playwright install-deps
al Dockerfile del devcontainer. Esto asegurará que las dependencias se instalen cuando se construya el contenedor, independientemente del sistema operativo del host. Además, puedes usar construcciones de múltiples etapas en el Dockerfile para construir y ejecutar el contenedor en cualquier sistema operativo.