Visão Geral
Curso Unit Testing with JUnit. JUnit 5 e EasyMock possibilitam escrever código Java de alta qualidade. Essas ferramentas poderosas são projetadas para oferecer suporte ao desenvolvimento de testes robustos, previsíveis e automatizados na área de aplicativos corporativos Java. Este Curso Unit Testing with JUnit é voltado para desenvolvedores experientes que precisam começar a trabalhar com habilidades essenciais de teste de unidade usando JUnit, Mockito e outras ferramentas. Os alunos sairão do curso munidos das habilidades necessárias para aproveitar práticas sólidas de testes unitários usando as mais recentes técnicas e melhores práticas do setor. Este Curso Unit Testing with JUnit apresenta rapidamente aos desenvolvedores os recursos do JUnit e os educa sobre os pontos fortes e fracos do JUnit.
Objetivo
Ao participar do Curso Unit Testing with JUnit, os participantes aprenderão a:
- Entenda o que é teste unitário e o que ele não pretende cobrir
- Entenda o JUnit 5
- Compreender e usar a interface JUnit Test Runner
- Use JUnit para conduzir a implementação do código Java
- Teste aplicativos usando suporte nativo de IDE
- Melhores práticas e padrões para testes unitários
- Entenda os pontos fortes e fracos do JUnit
- Entenda a função da depuração quando feita em conjunto com testes
- Entenda não apenas os fundamentos do TDD usando Java, mas também sua importância, usos, pontos fortes e fracos
- Entenda como o JUnit afeta sua perspectiva de desenvolvimento e aumenta seu foco em uma tarefa
- Sobre um bom estilo de codificação JUnit
- Crie programas JUnit bem estruturados
- Entenda como os testes JUnit podem ser usados para testes baseados em estado ou baseados em interação
- Estenda os testes com objetos simulados usando Mockito
Publico Alvo
- Desenvolvedores Java, engenheiros de garantia de qualidade e gerentes de desenvolvimento.
Pre-Requisitos
- Compreensão sólida de Java
- Familiaridade com conceitos de teste (por exemplo, unidade, integração, funcional, carga)
Materiais
Inglês + Exercícios + Lab Pratico
Conteúdo Programatico
Unit Testing Fundamentals
- Purpose of Unit Testing
- Good Unit Tests
- Test Stages
- Unit Testing Vs Integration Testing
- Understanding Unit Testing Frameworks
Jumpstart: JUnit 5.x
- Understand and work with the features of JUnit
- Write unit tests using @Test annotation
- Use @DisplayName to specify a custom name for the test
- Manage fixtures using @BeforeEach, @AfterEach, @BeforeAll and @AfterAll annotations
- Launch tests using @ExtendWith (@RunWith – JUnit 4+) annotation
- Build test suites using @SelectPackages or @SelectClasses
- Use @Disabled to prevent a test class or method from running
Annotations
- Describe the test execution cycle
- Check for exceptions thrown by test
- Use timeouts to fail test that take longer than required
Hamcrest
- Learn the notation of assertThat
- Know the objective of Hamcrest library
- Use Hamcrest's logical and object matchers
- Use Hamcrest's number and collection matchers
Parameterized Tests
- The @ParameterizedTest annotation
- A parameterized test to test code under several conditions
- Generic tests to support parameterized testing
Advanced Features
- Nested Unit Tests
- Repeated Tests
- JUnit Extensions
- Conditions
- Lambda Support
- Grouped Assertions
JUnit Best Practices
- "Good" Tests
- Bad Smell
- White-Box Unit Testing
- Black-Box Unit Testing
- Automation and Coverage
Mocking of Components
- Why We use Test Dummies
- Mock Objects
- Working with Mock Objects
- Using Mocks with the User Interface
- Mock Object Strategies
Mock Objects and Mockito
- Mockito Description and Features
- Mockito Object Lifecycle
- Create/Expect Phase
- Replay/Verify Phase
- Mocking Complex Objects
Improving Code Quality Through Refactoring
- Refactoring Overview
- Refactoring and Testing
- Refactoring to Design Patterns
- Naming conventions
TENHO INTERESSE