Testes unitários com PHPUnit
Evaldo Barbosa
Analista de Sistemas
Presidente do PHP Maranhão
Membro da diretoria da ABRAPHP
Mas eu nem sei o que é teste unitário!
Testar a menor unidade de código.
Mas eu preciso disso?
Aplicativos que são difíceis de manter;
Que quebram com a mínima alteração;
Quer garantir que aplicações complexas sejam
e...
Isso é TDD, é?
Te faz pensar no resultado;
Te faz codificar menos;
Te faz corrigir mais rápido.
TDD é uma filosofia
Testes para validação do código legado e
refatoração:
Domínio do problema conhecido;
Testes para confirmar que o código
fu...
Desenvolvimento guiado por testes:
Análise do problema;
Testes para cada unidade de código;
Código que atende ao teste.
Mas eu começo por onde?
http://www.evaldobarbosa.com.br/testes-unitarios-no-php-parte-1-de-3/
Caso dos sapatos da Maria
Identificação do problema
Separação dos dados
Criação de um Caso de Teste
Maria é louca por sapatos e viu na loja X alguns modelos pelos
quais ficou apaixonada e não está resistindo à tentação de
...
Maria, a cliente da loja X, vai comprar quantos pares
de calçados?
Três pares!
Qual o valor total da compra da Maria?
R$ 4...
Criação do caso de teste
http://www.evaldobarbosa.com.br/testes-unitarios-com-php-parte-2-de-3/
Instalação do PHPUnit
(via composer)
http://www.evaldobarbosa.com.br/testes-unitarios-no-phpunit-parte-3-de-3/
Rodando o testcase
Rodando o testcase
(quebrando o teste)
Rodando o testcase
(rodando com sucesso)
https://github.com/evaldobarbosa/CarrinhoPHPUnit
Testdox
Documentação
Code-coverage
Cobertura dos testes
Obrigado
Perguntas?
WWW.EVALDOBARBOSA.COM.BR
br.linkedin.com/in/evaldobarbosa
github.com/evaldobarbosa
twitter.com/evaldobarbosa
Próximos SlideShares
Carregando em…5
×

Testes unitários com PHPUnit

233 visualizações

Publicada em

Software pode se tornar uma coisa complexa. Testar o software de forma automatizada pode ser uma solução para evitar dores de cabeça.

Publicada em: Software
1 comentário
0 gostaram
Estatísticas
Notas
  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
233
No SlideShare
0
A partir de incorporações
0
Número de incorporações
8
Ações
Compartilhamentos
0
Downloads
1
Comentários
1
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Testes unitários com PHPUnit

  1. 1. Testes unitários com PHPUnit
  2. 2. Evaldo Barbosa Analista de Sistemas Presidente do PHP Maranhão Membro da diretoria da ABRAPHP
  3. 3. Mas eu nem sei o que é teste unitário!
  4. 4. Testar a menor unidade de código.
  5. 5. Mas eu preciso disso?
  6. 6. Aplicativos que são difíceis de manter; Que quebram com a mínima alteração; Quer garantir que aplicações complexas sejam estáveis; Documentação de como as coisas acontecem... Sim, você precisa de testes unitários. Se você tem...
  7. 7. Isso é TDD, é?
  8. 8. Te faz pensar no resultado; Te faz codificar menos; Te faz corrigir mais rápido. TDD é uma filosofia
  9. 9. Testes para validação do código legado e refatoração: Domínio do problema conhecido; Testes para confirmar que o código funciona; Refatoração pontual.
  10. 10. Desenvolvimento guiado por testes: Análise do problema; Testes para cada unidade de código; Código que atende ao teste.
  11. 11. Mas eu começo por onde? http://www.evaldobarbosa.com.br/testes-unitarios-no-php-parte-1-de-3/
  12. 12. Caso dos sapatos da Maria
  13. 13. Identificação do problema Separação dos dados Criação de um Caso de Teste
  14. 14. Maria é louca por sapatos e viu na loja X alguns modelos pelos quais ficou apaixonada e não está resistindo à tentação de comprar três deles e, além de levar os belos pares de sapatos, ganhar um descontinho de 20%. Ela vai comprar um sapato de festa azul por R$ 49,90, um outro preto com alguns enfeites por R$ 79,90 e o terceiro, um pouco mais caro, mas de uma marca fantástica – segundo ela – por R$ 121,00. O problema
  15. 15. Maria, a cliente da loja X, vai comprar quantos pares de calçados? Três pares! Qual o valor total da compra da Maria? R$ 49,90 + R$ 79,90 + R$ 121,00 = R$ 250,80. Existe um desconto de 20% a ser dado sobre esse valor. Com o desconto ele fica em quanto? R$ 250,80 * ( 1 – 0.2 ) = R$ 200,64. Separação dos dados
  16. 16. Criação do caso de teste http://www.evaldobarbosa.com.br/testes-unitarios-com-php-parte-2-de-3/
  17. 17. Instalação do PHPUnit (via composer)
  18. 18. http://www.evaldobarbosa.com.br/testes-unitarios-no-phpunit-parte-3-de-3/ Rodando o testcase
  19. 19. Rodando o testcase (quebrando o teste)
  20. 20. Rodando o testcase (rodando com sucesso)
  21. 21. https://github.com/evaldobarbosa/CarrinhoPHPUnit
  22. 22. Testdox Documentação
  23. 23. Code-coverage Cobertura dos testes
  24. 24. Obrigado
  25. 25. Perguntas?
  26. 26. WWW.EVALDOBARBOSA.COM.BR br.linkedin.com/in/evaldobarbosa github.com/evaldobarbosa twitter.com/evaldobarbosa

×