Em técnicas de testes temos dois tipos de testes, os tradicionais e os ágeis.
Os testes tradicionais são baseados em um modelo de ciclo de vida em cascata, onde o teste é realizado após a construção do software, e o foco é encontrar defeitos.
Já os testes ágeis são baseados em um modelo de ciclo de vida iterativo e incremental, onde o teste é realizado durante a construção do software, e o foco é prevenir defeitos.
- Teste demonstra a presença de defeitos, entretando, não garante sua inexistência.
- Teste exaustivo é impossível: Devemos levar em consideração os riscos e prioridades da aplicação, de forma a pegar dos valores possíveis e provar a maior cobertura de testes.
- Testes devem iniciar o quanto antes, uma vez que erros encontrados tarde custam mais para serem corrigidos
- Agrupamento de Defeitos
- Paradoxo do Pesticida
- Teste depende do contexto
- A ilusão da ausência de defeitos
O foco do QA ágil é:
- Prevenção de bugs, para que sejam identificados em fases iniciais, para redução de custos e esforços.
- Garante que as expectativas do clientes sejam claras.
- Aceita novas ideias.
- O Tester é parte de um time.
- A qualidade é responsabilidade do Time.
- O teste é uma atividade do processo de desenvolvimento de software.
O QA tradicional tem como foco encontrar defeitos, detectar uma forma de quebrar o software.
O QA Ágil procura previnir erros, encontrar bugs nas primeiras etapas para otimizar a construção da aplicação, evitando retrabalho e minimizando riscos.