É nosso aniversário e tem presente para você! 🎁🎆 - até 28/04/2024 20% de desconto com o CUPOM: ANIVERCDC2024 + marca páginas exclusivo na compra de um livro impresso!
Testes automatizados de software
Um guia prático
Mauricio Aniche
Testes automatizados de software: Um guia prático
Sumário
1 - Testes de Unidade
1.1 - Um código qualquer
1.2 - Implementando uma nova funcionalidade
1.3 - O que aconteceu?
1.4 - Olá mundo, JUnit!
1.5 - Convenções na escrita de testes
1.6 - Mas será que sou produtivo assim?
1.7 - Testando o que realmente é necessário
1.8 - Classes de equivalência
1.9 - Import estático do Assert
1.10 - A próxima funcionalidade: os 3 maiores lances
1.11 - Testando casos especiais
1.12 - A bateria de testes nos salvou mais uma vez!
1.13 - Quais são as dificuldades?
1.14 - Cuidando dos seus testes
1.15 - Test Data Builders
1.16 - @After, @BeforeClass e @AfterClass
1.17 - Acoplamento entre testes e produção
1.18 - Cuide bem dos seus testes
1.19 - Testando exceções
1.20 - Melhorando a legibilidade dos testes
1.21 - 100% de cobertura de testes?
2 - Praticando Test-Driven Development (TDD)
2.1 - Testes, do jeito que você já sabe
2.2 - Mudando a maneira de desenvolver
2.3 - Test-Driven Development
2.4 - Efeitos no design de classes
2.5 - Baby steps
2.6 - Devo ver o teste falhar?
2.7 - TDD 100% do tempo?
2.8 - Onde posso ler mais sobre isso?
3 - Mock Objects
3.1 - Simulando a infraestrutura
3.2 - Mock Objects
3.3 - Mocks estritos e acoplamento
3.4 - Fugindo de métodos estáticos
3.5 - Garantindo que métodos foram invocados
3.6 - Contando o número de vezes que o método foi invocado
3.7 - Outros métodos de verificação
3.8 - Mocks que lançam exceções
3.9 - Simulando exceções
3.10 - Capturando argumentos recebidos pelo mock
3.11 - Isolando para testar
3.12 - Criando abstrações para facilitar o teste
3.13 - O que mockar e o que não mockar?
4 - Testes de Integração
4.1 - Devemos mockar um DAO?
4.2 - Testando DAOs
4.3 - Testando cenários mais complexos
4.4 - Praticando com consultas mais complicadas
4.5 - Testando alteração e deleção
4.6 - Organizando testes de integração
5 - Testes de Sistema
5.1 - Automatizando o primeiro teste de sistema
5.2 - Novamente, as vantagens do teste automatizado