Nesta seção, você aprenderá sobre testes de unidade em Python usando os módulos unittest para tornar seu código mais robusto.
O que você aprenderá:
- Escreva casos de teste eficazes usando o
unittest
módulo - Execute testes de unidade rapidamente
- Ignorar testes incondicionalmente e condicionalmente
- Usando testes duplos, incluindo simulações, stubs e falsificações
- Parametrizar testes
- Gere relatórios de cobertura de teste
Seção 1. Introdução aos testes unitários em Python
Esta seção apresenta o teste de unidade e o módulo unittest. Depois de concluir esta seção, você saberá como definir e executar testes unitários de maneira eficaz.
- O que é teste unitário – apresentaremos o teste unittest e como usar o módulo unittest para realizar testes unitários.
- Acessórios de teste – aprenda como usar acessórios de teste, incluindo setUp() e tearDown() para executar as etapas antes e depois dos métodos de teste.
- Ignorando testes – orienta você sobre como pular um método de teste ou classe de teste.
- Executando unittest – mostra vários comandos para executar testes de unidade.
Seção 2. métodos de afirmação
Esta seção cobre os métodos assert para que você saiba como usar cada um deles de maneira mais eficaz.
- métodos assert – apresenta uma breve visão geral dos métodos assert da
TestCase
classe. - assertEqual() – testa se dois valores são iguais.
- assertAlmostEqual() – testa se dois valores são aproximadamente iguais.
- assertIs() – testa se dois objetos são iguais.
- assertIsInstance() – testa se um objeto é uma instância de uma classe ou uma tupla de classes.
- assertIsNone() – testa se uma expressão é None.
- assertTrue() – testa se uma expressão é True.
- assertIn() – testa se um membro está em um contêiner.
Seção 3. Teste em duplas
Esta seção apresenta os testes duplos para desacoplar o sistema sob código de teste do resto do sistema para que o código possa ser testado isoladamente.
- Mock – aprenda como usar a classe Mock para imitar comportamentos de outra função ou classe.
- patch() – mostra como usar patch() para substituir temporariamente um objeto por outro objeto para teste.
- Stubs – mostra como usar a classe MagicMock e patch() para criar stubs.
- Módulo de simulação de solicitações – aprenda como simular o módulo de solicitações para testar uma chamada de API usando o módulo unittest.
Seção 4. Cobertura de testes e testes parametrizados
Esta seção apresenta a cobertura de testes e como definir testes parametrizados usando o subTest()
gerenciador de contexto.
- Gerando relatórios de cobertura de teste – aprenda sobre a cobertura de teste e como gerar o relatório de cobertura de teste usando o módulo de cobertura.
- Definindo testes parametrizados usando subTest() – mostra como definir testes parametrizados usando o gerenciador de contexto subTest() do unittest.
Anterior