Ce référentiel comprend des exemples de la façon dont vous pouvez améliorer votre suite de tests avec Docker. Les exemples sont en PHP ou Node et nécessitent que Docker soit installé localement.
Utilisez les courtes instructions ci-dessous ou consultez l'article de blog (à venir) pour plus de détails.
/ex-1
docker run --rm -v $(pwd):/app -w /app composer install
docker run --rm -v $(pwd):/app -w /app php:7.2 vendor/bin/phpunit index.php
(devrait réussir)docker run --rm -v $(pwd):/app -w /app php:7.1 vendor/bin/phpunit index.php
(devrait réussir)docker run --rm -v $(pwd):/app -w /app php:7.0 vendor/bin/phpunit index.php
(devrait réussir)docker run --rm -v $(pwd):/app -w /app php:5.6 vendor/bin/phpunit index.php
(devrait générer une erreur de syntaxe) /ex-2
docker run --rm -v $(pwd):/app -w /app composer install
docker run --name database --rm -d -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:5.7
docker run --rm -v $(pwd):/app -w /app --link database php:7.2 vendor/bin/phpunit index.php
(devrait échouer)docker build . -t php-72-mysqli
docker run --rm -v $(pwd):/app -w /app --link database php-72-mysqli vendor/bin/phpunit index.php
(devrait réussir)docker rm -f database
/ex-3
docker run --rm -v $(pwd):/app -w /app composer install
docker build . -t php-72-mysqli
docker run --name database --rm -d -e MYSQL_ALLOW_EMPTY_PASSWORD=true -e MYSQL_DATABASE=test mysql:5.6
. Attendez quelques secondes que le conteneur démarre.docker run --rm -v $(pwd):/app -w /app --link database php-72-mysqli vendor/bin/phpunit index.php
(devrait échouer)docker rm -f database
docker run --name database --rm -d -e MYSQL_ALLOW_EMPTY_PASSWORD=true -e MYSQL_DATABASE=test mysql:5.7
. Attendez quelques secondes que le conteneur démarre.docker run --rm -v $(pwd):/app -w /app --link database php-72-mysqli vendor/bin/phpunit index.php
(devrait réussir)docker rm -f database
/ex-4
docker run --rm -v $(pwd):/app -w /app composer install
docker build . -t php-72-mysqli
docker run --name database --rm -d -e MYSQL_ALLOW_EMPTY_PASSWORD=true -v $(pwd)/data:/var/lib/mysql mysql:5.7
. Attendez quelques secondes que le conteneur démarre.docker run --rm -v $(pwd):/app -w /app --link database php-72-mysqli vendor/bin/phpunit index.php
(devrait réussir)docker rm -f database
/ex-5
docker-compose run --rm nightwatch
.docker-compose down
.Cet exemple est adapté du dépôt open source nightwatch de blueimp.
/ex-6
docker-compose run --rm nightwatch
.docker-compose down
.Cet exemple est adapté de l'exemple open source Node/Express de b00giZm.
Copyright 2018, Karl Hughes
Sous licence Apache, version 2.0 (la « Licence » ); vous ne pouvez pas utiliser ce fichier sauf en conformité avec la licence. Vous pouvez obtenir une copie de la licence à
http://www.apache.org/licenses/LICENSE-2.0
Sauf disposition contraire de la loi applicable ou accord écrit, le logiciel distribué sous la licence est distribué « EN L'ÉTAT », SANS GARANTIE OU CONDITION D'AUCUNE SORTE, expresse ou implicite. Consultez la licence pour connaître la langue spécifique régissant les autorisations et les limitations en vertu de la licence.