Este é um plugin oh-my-zsh
que permite executar phpunit
-tests em um contêiner docker. Este plugin vem com preenchimento automático para executar contêineres, comandos e grupos phpunit.
Para instalar você precisa Docker
e oh-my-zsh
. Então você pode instalar o plugin fazendo o seguinte:
cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/windler/zsh-phpunit-docker.git
zsh
Depois de instalar o plugin você deve definir duas variáveis. Este plugin precisa saber onde o executável do phpunit está localizado em seus contêineres. Se você deseja gerar relatórios de cobertura também deve definir a pasta de saída. No arquivo você pode adicionar as seguintes variáveis ao seu arquivo ~/.zshrc
:
__DOCKER_PHPUNIT="./vendor/phpunit/phpunit/phpunit"
__DOCKER_PHPUNIT_COVERAGE_DIR="coverage_report"
O comando básico é
dockertests <container> [<option> [<arg>]]
##Example
dockertests my_php_fpm_container group integration_tests
O argumento <container>
é o nome ou id de um contêiner em execução. Você pode usar tab
para preenchimento automático. Depois de escolher um container você tem várias opções:
all - Runs all tests except the ignore-group (if used). This is the default command.
group - Runs tests for a phpunit group
filter - provides a filter for e.g. running one tests
coverage - runs all tests except ignore-group and prints coverage (console)
coverage-report - runs all tests except ignore-group with coverage report (html)
Se o comando group
for fornecido, você poderá preencher automaticamente o grupo phpunit (isso demora um pouco).
Além de executar testes você pode simplesmente iniciar um bash
em um cotainer usando
dockerbash <container>
O argumento <container>
é o nome ou id de um contêiner em execução. Você pode usar tab
para preenchimento automático.