SlideShare uma empresa Scribd logo
1 de 21
 
Índice ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Download Entre 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 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.
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 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.
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.
Aninhamento Você 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  [email_address]  você pode acompanhar, tirar dúvidas, contribuir e ajudar no amadurecimento da ferramenta  PhpDescribe .

Mais conteúdo relacionado

Destaque

Moldere Apresentação - Empreendendo.me
Moldere Apresentação - Empreendendo.meMoldere Apresentação - Empreendendo.me
Moldere Apresentação - Empreendendo.me
Leandro Santos
 
090916 Roteiro01
090916 Roteiro01090916 Roteiro01
090916 Roteiro01
Diego Doná
 
Time line do armazenamento de dados
Time line do armazenamento de dadosTime line do armazenamento de dados
Time line do armazenamento de dados
Flavio Souza
 

Destaque (20)

Apresentação da Comunidade PHPDF
Apresentação da Comunidade PHPDFApresentação da Comunidade PHPDF
Apresentação da Comunidade PHPDF
 
O problema da utilização de CSS HACKS para garantia de resultados em diferent...
O problema da utilização de CSS HACKS para garantia de resultados em diferent...O problema da utilização de CSS HACKS para garantia de resultados em diferent...
O problema da utilização de CSS HACKS para garantia de resultados em diferent...
 
FLISOL 2009 - Modelos de Negócios com Software Livre
FLISOL 2009 - Modelos de Negócios com Software LivreFLISOL 2009 - Modelos de Negócios com Software Livre
FLISOL 2009 - Modelos de Negócios com Software Livre
 
HTML5
HTML5HTML5
HTML5
 
Aula 4 - Tecnicas de Prototipação I
Aula 4 - Tecnicas de Prototipação IAula 4 - Tecnicas de Prototipação I
Aula 4 - Tecnicas de Prototipação I
 
Moldere Apresentação - Empreendendo.me
Moldere Apresentação - Empreendendo.meMoldere Apresentação - Empreendendo.me
Moldere Apresentação - Empreendendo.me
 
Introdução ao CakePHP
Introdução ao CakePHPIntrodução ao CakePHP
Introdução ao CakePHP
 
Web semântica e html5 na recuperação de conteúdo informacional
Web semântica e html5 na recuperação de conteúdo informacionalWeb semântica e html5 na recuperação de conteúdo informacional
Web semântica e html5 na recuperação de conteúdo informacional
 
Joomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções própriasJoomla! como plataforma de desenvolvimento de soluções próprias
Joomla! como plataforma de desenvolvimento de soluções próprias
 
Criatividade Comercial - Trust Summit 2014
Criatividade Comercial - Trust Summit 2014Criatividade Comercial - Trust Summit 2014
Criatividade Comercial - Trust Summit 2014
 
#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5#DeveloperDay - Front-end API html5
#DeveloperDay - Front-end API html5
 
Visão Geral do CMS e Framework Joomla - Business IT South America
Visão Geral do CMS e Framework Joomla - Business IT South AmericaVisão Geral do CMS e Framework Joomla - Business IT South America
Visão Geral do CMS e Framework Joomla - Business IT South America
 
Teacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDFTeacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDF
 
I Heart Stuxnet
I Heart StuxnetI Heart Stuxnet
I Heart Stuxnet
 
Open Courseware 3D
Open Courseware 3DOpen Courseware 3D
Open Courseware 3D
 
090916 Roteiro01
090916 Roteiro01090916 Roteiro01
090916 Roteiro01
 
Programação de Jogos - Design Patterns
Programação de Jogos - Design PatternsProgramação de Jogos - Design Patterns
Programação de Jogos - Design Patterns
 
Time line do armazenamento de dados
Time line do armazenamento de dadosTime line do armazenamento de dados
Time line do armazenamento de dados
 
REVISTA COMPUTER ARTS BRASIL #52
REVISTA COMPUTER ARTS BRASIL #52REVISTA COMPUTER ARTS BRASIL #52
REVISTA COMPUTER ARTS BRASIL #52
 
Escreva menos e faça mais com a jQuery
Escreva menos e faça mais com a jQueryEscreva menos e faça mais com a jQuery
Escreva menos e faça mais com a jQuery
 

Semelhante a Apresentação PhpDescribe

Semelhante a Apresentação PhpDescribe (20)

Refactory Worshop
Refactory WorshopRefactory Worshop
Refactory Worshop
 
Php women oficina iniciante de php
Php women   oficina iniciante de phpPhp women   oficina iniciante de php
Php women oficina iniciante de php
 
Testes automatizados end-to-end com WordPress por Fabio Nas
Testes automatizados end-to-end com WordPress por Fabio NasTestes automatizados end-to-end com WordPress por Fabio Nas
Testes automatizados end-to-end com WordPress por Fabio Nas
 
C#4 - Parte 2 - COM interop e variância
C#4 - Parte 2 - COM interop e variânciaC#4 - Parte 2 - COM interop e variância
C#4 - Parte 2 - COM interop e variância
 
Desenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHPDesenvolvimento de Software I - USBWEBSERVER - PHP
Desenvolvimento de Software I - USBWEBSERVER - PHP
 
Aula2
Aula2Aula2
Aula2
 
Padrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por TestesPadrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por Testes
 
Desafio Rest API
Desafio Rest APIDesafio Rest API
Desafio Rest API
 
Minicurso de TDD
Minicurso de TDDMinicurso de TDD
Minicurso de TDD
 
3. ambiente de desenvolvimento do vb (parte 2)
3. ambiente de desenvolvimento do vb (parte 2)3. ambiente de desenvolvimento do vb (parte 2)
3. ambiente de desenvolvimento do vb (parte 2)
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
LVI-Aula05
LVI-Aula05LVI-Aula05
LVI-Aula05
 
LVI_Aula05
LVI_Aula05LVI_Aula05
LVI_Aula05
 
Os Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de softwareOs Benefícios dos testes no desenvolvimento de software
Os Benefícios dos testes no desenvolvimento de software
 
Testes unitários como ferramentas de design de código
Testes unitários como ferramentas de design de códigoTestes unitários como ferramentas de design de código
Testes unitários como ferramentas de design de código
 
Specificationby example
Specificationby example Specificationby example
Specificationby example
 
Dito Tech Talk RSpec
Dito Tech Talk RSpecDito Tech Talk RSpec
Dito Tech Talk RSpec
 
Desenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por TestesDesenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por Testes
 
Ágil na Prática
Ágil na PráticaÁgil na Prática
Ágil na Prática
 
Treinamento Testes Unitários - parte 2
Treinamento Testes Unitários - parte 2Treinamento Testes Unitários - parte 2
Treinamento Testes Unitários - parte 2
 

Último

Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
Natalia Granato
 

Último (6)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 

Apresentação PhpDescribe

  • 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.
  • 18. Execute o programa Suas especificações estão passando.
  • 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 .