Apresentação PhpDescribe

Post on 01-Dec-2014

557 views 0 download

description

Uma demonstração da ferramenta de testes criada e mantida pela comunidade PHPDF

Transcript of Apresentação PhpDescribe

Índice

1) Download2) Salvando o arquivo3) Configurando o arquivo index.php4) Criando o arquivo validar.php5) Criando o arquivo validar.spec.php6) Especificando meu primeiro teste7) Aninhando as especificações

DownloadEntre no site: www.phpdescribe.org e clique no link para baixar

o arquivo phpdescribe.zip

Salvando o arquivo

Salve o arquivo PhpDescribe.zip na sua pasta de projetos

Configurando o arquivo index.php

Define qual especificação será executada e roda aEspecificaçã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 comonossa especificação base.

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.

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

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:

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.

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.

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

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.

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.

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.

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.

Adicionando mais um testeComeç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.

Adicionando o método

Adicionamos o método telefoneTamanho() ao arquivo validar.php responsável por retornar o total de números.

Execute o programa

Suas especificações estão passando.

AninhamentoVocê pode organizar suas especificações por grupos tornando

mais organizado sua malha de testes.

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.

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 phpdescribe@googlegroups.com você pode acompanhar, tirar dúvidas, contribuir e ajudar no amadurecimento da ferramenta PhpDescribe.