Tutoriais
Como usar o docker-phpqa
Fotografado por Lucas Gallone.
Como instalar?
-
Você precisa ter o docker instalado na sua máquina.
-
Execute nosso instalador:
1
curl -s https://raw.githubusercontent.com/herdphp/docker-phpqa/master/bin/installer.sh | bash
Comece a PHPTestar!!!
Como usar?
Para criar novos arquivos de teste PHPT
O comando generate-phpt, embutido no docker-phpqa
, é uma ferramenta de desenvolvimento
que existe dentro do repositório PHP-SRC. Sua utilização é bem simples e tem a intenção de inicializar a criação
do PHPT.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Usage:
phpqa generate [PHPT_DIR] -f <function_name> |-c <class_name> -m <method_name> -b|e|v [-s skipif:ini:clean:done] [-k win|notwin|64b|not64b] [-x ext]
Where:
-f function_name ................. Name of PHP function, eg cos
-c class name .....................Name of class, eg DOMDocument
-m method name ....................Name of method, eg createAttribute
-b ............................... Generate basic tests
-e ............................... Generate error tests
-v ............................... Generate variation tests
-s sections....................... Create optional sections, colon separated list
-k skipif key..................... Skipif option, only used if -s skipif is used.
-x extension.......................Skipif option, specify extension to check for
-h ............................... Print this message
Se você quiser visualizar a ajuda, pode executar:
1
phpqa generate -h
Se quiser criar um teste PHPT básico para a função ucfirst
:
1
phpqa generate -f ucfirst -b
Será criado um arquivo PHPT modelo para a função ucfirst dentro do diretório PHPT padrão. Se quiser escolher
o diretório PHPT onde os arquivos serão criados, você pode passá-lo como o primeiro argumento do comando generate
:
1
phpqa generate /path/to/phpt/dir -f ucfirst -b
Como rodar os testes que criou em múltiplas versões do PHP
- Escreva um teste em qualquer pasta;
- Execute o comando
phpqa
passando como argumentos o caminho do arquivo (relativo ou absoluto) e a versão do PHP na qual o teste será rodado (72, 71, 70, 56, 55):
1
2
3
4
5
6
# sem uma versão o teste rodará no PHP 7.1
phpqa run phpt/examples/closure_061.phpt
# com uma versão o teste rodará nesse versão específica
phpqa run phpt/examples/closure_061.phpt 56
# você pode passar `all` como um segundo argumento e o teste rodará em todas as versões
phpqa run phpt/examples/closure_061.phpt all
Versões do PHP disponíveis
PHP 5.5, 5.6, 7.0, 7.1 e 7.2 (Beta1) estão disponíveis com suporte total;
Contribuição
Se você encontrar qualquer bug ou erro de escrita, sinta-se à vontade para criar uma issue e/ou abrir um pull request com a solução.