Enxergar os testes como uma piramide de testes.
Os níveis seguem a ordem listada abaixo, buscando 100% de cobertura de testes.
Os testes iniciais (unitário e integração) são menos custosos, o restante são mais custosos.
- Teste unitário É a menor unidade possível de código funcional (Componentes, classes, métodos, funções, etc).
- Teste integrado Integração entre pequenas partes (testes unitários) do seu código.
- Teste funcional Integração do seu sistema com outros sistemas.
Teste Automatizado
NÃO é integrar com outros sistemas, mas sim com outras partes do seu código.
Testar uma funcionalidade de negócio de ponta-a-ponta (end-to-end), ou seja, do começo ao fim.
Conhecido como teste black-box (Caixa preta), porque testa-se como consumidor, sem se importar em como está sendo executado por baixo, como foi feito, quais tecnologias.
Deste ponto de vista, não se faz mock, o importante é validar se o contrato foi cumprido, se a funcionalidade está ok.
- Teste de Usabilidade
- Teste de Aceitação do usuário
- Protótipos Muito comuns na parte de design para validar o produto.
- Teste Funcional
- Exemplos
- Publicações de Alpha e beta
Testes Manuais e Automatizados
- Teste de carga e performance
- Teste de segurança