- Apresentar a pirâmide de testes de software e detalhar cada nível.
- Destacar a importância dos testes unitários durante o desenvolvimento.
- Apresentar frameworks referência para testes: JUnit, Mockito e Hamcrest.
- Codificar, compartilhar e aprender todos juntos.
- Java 14
- Maven 3.6.2
- Spring Boot (última versão estável lançada)
- GIT/GITHUB para versionamento de código
- Frameworks JUnit, Mockito e Hamcrest
- Gera os getters e setters automaticamente.
- Data Access Object
- Comunicação com o banco de dados.
- Introduzido no Java 8.
- De dentro para fora.
- Uma controller passandos os dados sem parte gráfica.
- GET -> Read from Database.
- PUT -> Update/Replace row in Database.
- PATCH -> Update/Modify row in Database.
- POST -> Create a new recorde in the database.
- DELETE -> Delete from the database.
- Level 3 - Hypermedia Controls
- Level 2 - HTTP Verbs
- Level 1 - Resources
- Level 0 - The Swamp Of Pox
- UI Tests -> appium
- Integrations Tests -> UI Automator, espresso e AndroidJUnit4
- Unit Tests -> Mock, JUnit e mockito
- Sistema testado de ponta a ponta.
- Evolução segura: sem quebrar funcionalidades.
- Teste também é forma de documentação.
- Integração contínua (CI)
- Deploy contínuo (CD)
- Maior número de testes, menor custo e tempo
- Testes feito pelo próprio desenvolvedor
- Rápidos, com base em linhas de código
- Cobertura de vários cenários para as linhas
- Integração com outros códigos: através de mocks
- JUnit
- Mockito
- Hamcrest
- Spring Boot Starter Test: acesso a todos os frameworks!
- Auxilia nos testes porque traz tudo preenchido.
- Adiciona qualidade ao teste e deixa mais poderoso.
- Maioria dos testes da empresas e comunidades são em inglês.
- git diff -> Lista todos os testes realizados.
- Testar e simplificar o código.