Essa palestra foi apresentada online em março de 2023 para alunos da Alura, a convite do instrutor André Bessa.
Foi uma introdução a testes unitários e uma pequena demonstração de como usar a biblioteca xUnit.
Pontos chave
- Testar traz muitos benefícios. Não testar traz várias consequências.
- Código escrito com testes geralmente tem mais qualidade porque foi pensado desde o início para ser fácil de testar e de manter.
- Testes unitários são apenas um tipo. Não ignore os testes de mais alto nível.
- TDD é uma técnica para escrever código a partir dos casos de teste.
- xUnit é uma das bibliotecas mais utilizadas para escrever testes em C#/.NET.
- Todos os conceitos abordados vão muito além da tecnologia, como linguagens, bibliotecas e frameworks.
Resumo do conteúdo
1. Por que testar? – a importância dos testes
Um software, assim como um carro, precisa passar por testes, mesmo que um erro no software em produção provavelmente não seja tão fatal quanto num carro em movimento.

Quando você testa, você tem:
- Código com mais qualidade
- Código mais robusto
- Automatização
- Boas práticas
- Reconhecimento e satisfação pessoal
Quando você não testa, você tem:
- Mais retrabalho
- Código frágil
- Testes manuais
- Usuários insatisfeitos
- Entrega de baixa qualidade
Não existe software perfeito, existe software mal testado.
2. O que testar? – tipos de testes
Pirâmide de testes

Testes unitários: o que é uma unidade?
Em linguagens orientadas a objeto, pode ser um método ou até mesmo uma classe inteira.
O fluxo TDD:

3. Como testar? – exemplo de código
O código fonte está no GitHub.
Veja os slides.