O documento fornece instruções passo-a-passo para configurar e usar a ferramenta PhpDescribe para testes de software. Ele explica como baixar e descompactar o arquivo PhpDescribe, criar arquivos PHP para classes e especificações de teste, e executar os testes para verificar se eles passam. O documento também mostra como aninhar especificações de teste para organizá-las em grupos.
Introdução ao PhpDescribe para testes automatizados
1.
2.
3. Download Entre no site: www.phpdescribe.org e clique no link para baixar o arquivo phpdescribe.zip
4. Salvando o arquivo Salve o arquivo PhpDescribe.zip na sua pasta de projetos
5. Configurando o arquivo index.php Define qual especificação será executada e roda a Especificação. Gera um report em html logo em seguida. Crie o arquivo index.php e escreva o código abaixo. Neste exemplo estamos definindo validar como nossa especificação base.
6. Criando o arquivo validar.php Crie o arquivo validar.php e escreva este código acima. Os métodos da classe validar serão criados e testados pelas especificações.
7. Criando o arquivo validar.spec.php Crie o arquivo validar.spec.php e escreva este código acima. Este arquivo é responsável pelas especificações. Aqui você escreverá toda a cobertura de testes. Observe que o PhpDescribe utiliza namespace e outros recursos que só funcionam caso estejam utilizando PHP 5.3
8. Estrutura OBS: Recomendamos que não seja alterada a nomenclatura das pastas dentro do PhpDescribe. Alterando o nome da pasta PhpDescribe ou modificando sua localização, então você deve alterar os includes do arquivo index.php e validar.spec.php Sua estrutura deve ficar semelhante a imagem abaixo:
9. Rode o programa Execute o programa no seu navegador. Ex.: http://localhost/dojo/validar Se os includes estiverem corretos então você enxergará uma tela como esta.
10. Especificando meu primeiro teste Você deve iniciar suas especificações de teste dentro do scopo describe. Neste exemplo estamos testando se o método telefone() retorna true caso o número telefônico for do tipo numérico. Repare que o número está entre aspas. Você pode passar o argumento do tipo numérico sem aspas também.
11. Execute o programa Aqui é gerado um erro logo após a criação da sua primeira especificação. Observe que o método telefone() não existe no arquivo validar.php
12. Crie o método telefone Entre no arquivo validar.php e crie o método telefone. Este método recebe um argumento onde será testado se o tipo do argumento é numérico.
13. Execute o programa Está passando o primeiro teste. Se você clicar no link code é exibido a especificação do teste. Clicando em rename você altera a mensagem da especificação.
14. Modifique o argumento do teste Observe que adicionamos um hífen para dividir o número telefônico. Este caracter indica que o argumento tem número e texto o que deixa de ser do tipo numérico.
15. Execute o programa Agora o teste retornou um erro. Clicando em +++ é exibido uma mensagem informando que o teste esperava true e o método telefone retornou false.
16. Adicionando mais um teste Começamos a intensificar os testes para o número telefônico. Esperamos que os testes retornem true para tipo numérico e exatamente 8 para a quantidade de números.
17. Adicionando o método Adicionamos o método telefoneTamanho() ao arquivo validar.php responsável por retornar o total de números.
19. Aninhamento Você pode organizar suas especificações por grupos tornando mais organizado sua malha de testes.
20. Execute o programa PhpDescribe fornece um resultado surpreendente e eficaz. Você consegue realizar suas especificações e documentar o seu software em um único lugar.
21. Desenvolvida por Bruno Reis o PhpDescribe é uma ferramenta que busca unir as especificações e testes de software em um só documento. Através do grupo [email_address] você pode acompanhar, tirar dúvidas, contribuir e ajudar no amadurecimento da ferramenta PhpDescribe .