Come eseguire l'elettrone all'interno di un'immagine docker alpina con Testcafe?
Sto cercando di eseguire i miei test e2e per un'app di elettroni con Testcafe su gitlab all'interno di un'immagine docker.
Quindi utilizzo un'immagine docker di Testcafe che estendo solo installando yarn
.
Lo script gitlab crea solo i miei test e2e (che ha esito positivo), ma l'elettrone non viene visualizzato e la pipeline si interrompe con questo errore:
$ /opt/testcafe/docker/testcafe-docker.sh electron:./ci ./test/e2e/ --screenshots takeOnFails=true
Using locally installed version of TestCafe.
Error: spawn /builds/myFancyProject/node_modules/electron/dist/electron ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:267:19)
at onErrorNT (internal/child_process.js:469:16)
at processTicksAndRejections (internal/process/task_queues.js:84:21)
Qualche suggerimento per risolvere questo errore?
Questo è il mio semplice file docker:
FROM testcafe/testcafe
USER root
RUN apk add --update yarn
Risposte
L'immagine Docker ufficiale di TestCafe utilizza Alpine come immagine di base. Electron non supporta Alpine in questo momento:https://github.com/electron/electron/issues/9662#issuecomment-420480342. Abbiamo in programma di offrire più immagini ufficiali, comprese quelle basate su Ubuntu, ma non posso darti alcun ETA su quando saranno disponibili:https://github.com/DevExpress/testcafe/issues/3100
Attualmente, puoi usare circleci / node: latest-browsers e installare TestCafe con npm
se vuoi usare Electron con TestCafe e Docker.