Para evitar alguns dos problemas de teste e validação do sistema, a abordagem XP enfatiza a importância dos testes do programa. Extreme Programming inclui uma abordagem de testes que reduz as chances de erros desconhecidos na versão atual do sistema.
As principais características dos testes em XP são:
1) desenvolvimento test-first;
2) desenvolvimento de teste incremental a partir de cenários;
3) envolvimento dos usuários no desenvolvimento de testes e validação;
4) uso de frameworks de testes automatizados.
O desenvolvimento test-first é uma das mais importantes inovações no XP. Em vez de escrever algum código e, em seguida, escrever testes para esse código, você escreve os testes antes de escrever o código. Isso significa que você pode executar o teste enquanto o código está sendo escrito e pode encontrar problemas durante o desenvolvimento.
Fonte: Sommerville, 9ª Edição, Capítulo 3.
Comentários:
Algumas Práticas do XP:
Pair Programming (Programação em Pares)
Intuito de elevar os níveis de atenção ao código produzido, pois um
acompanha o trabalho do outro, minimizando a possibilidade de erros
no código.
Whole Team (Time Coeso)
Todos trabalham em conjunto promovendo a colaboração e sem hierarquias.
Test First Design (Primeiro os Testes)
Garante a redução de erros de programação e aumenta a garantia
de qualidade.
Continuous Integration (Integração Contínua)
Os diversos módulos devem ser integrados tão logo sejam
construídos. O código precisa obter sucesso em uma série de
fatores pré-definidos.