per l'esecuzione di test che di solito eseguire un contenitore separato con:esecuzione di test Django con selenio in finestra mobile
docker-compose run --rm web /bin/bash
Dove web è un contenitore con Django. Da una shell eseguo py.test di volta in volta.
Per poter raggiungere il selenio da un contenitore con django e per consentire al browser del contenitore di selenio di raggiungere il server del django, ho deciso di utilizzare il parametro "net" che consente ai contenitori di condividere la rete. Quindi l'ho aggiunto a yml:
selenium:
image: selenium/standalone-firefox
net: "container:web"
Purtroppo questo non funziona. Non vedo 4444 porte nel mio contenitore django.
Funziona solo se al posto di si specifica il nome di un contenitore generato automaticamente, ad esempio net:"container:project_web_run_1"
.
Inoltre ho cercato invece di docker-compose run --rm ....
uso docker-compose up --no-deps
cambiare command
parametro py.test functional_tests
, ma che non ha funzionato neanche.
È questo il diritto di utilizzare il selenio con i contenitori?
È anche possibile impostare l'URL del server di vita nell'ambiente in modo che non sia necessario passarlo ogni volta sulla riga di comando, impostando 'DJANGO_LIVE_TEST_SERVER_ADDRESS'. –