PHP Expericence 2015 - Testes Unitários - Existe vida antes do TDD

4.637 visualizações

Publicada em

Slides da palestra sobre testes unitários apresentada durante o PHP Experience 2015.
Vídeo: https://www.youtube.com/watch?v=OXqRqR9cxlw&index=3&list=PLASrXUpwQG6f2cj-LlEBLZ8sXFDujO1qf

Publicada em: Software
0 comentários
12 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
4.637
No SlideShare
0
A partir de incorporações
0
Número de incorporações
424
Ações
Compartilhamentos
0
Downloads
11
Comentários
0
Gostaram
12
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

PHP Expericence 2015 - Testes Unitários - Existe vida antes do TDD

  1. 1. Testes: existe vida antes do TDD Diana Ungaro Arnos
  2. 2. Antes de tudo: Por que testamos?
  3. 3. O mundo perfeito Testes automatizados Continuous Integration +
  4. 4. O início do caminho Testes Unitários Objetivo: garantir o retorno esperado em todos os casos possíveis ●Caminho feliz ●Fluxos alternativos ●Fluxos de exceção
  5. 5. O que é um teste unitário? Testes Unitários
  6. 6. Vantagens ●Manutenção facilitada de código ●Segurança ao refatorar ●Estimula melhor implementação da programação orientada a objetos ●Serve como documentação
  7. 7. Erros Comuns ●Você precisa alterar seu ambiente para os testes rodarem sem problemas (ex.: alterar configurações da aplicação) ●Faz comunicação com algum banco de dados ●Utiliza algum recurso de rede ●Utiliza seu sistema de arquivos
  8. 8. Boas Práticas ●Cada teste verifica apenas um comportamento ●Um teste não deve depender do resultado de outro ●Testar apenas métodos públicos ●O nome de cada teste deve indicar o que está sendo testado e qual o resultado esperado (algunsNomesPodemFicarUmTantoGrandes) ●Usar testes parametrizados sempre que possível Polêmica: usar um único método de assert por teste
  9. 9. Mocking Criação de objetos que simulam o comportamento de objetos reais e substituem as dependências externas nos testes. Stubs Não têm lógica, apenas retornam o que você mandar, basicamente com reusultados hard coded Mocks Objetos baseados em expectativas e que simulam comportamento, testam interações entre objetos
  10. 10. DÚVIDAS?
  11. 11. Obrigada! Diana Ungaro Arnos Webdev @ Tricae Twitter: @dianaarnos Site: dianaarnos.branded.me G+: +DianaUngaroArnos Facebook: /dianaaarnos

×