Unit-Tests são uma ferramenta poderosa para desenvolvedores garantirem a qualidade do seu código. Eles permitem que você teste funções isoladamente e assegure que elas funcionam como desejado. Neste guia, vou mostrar como escrever seu primeiro Unit-Test em Python. Você aprenderá não apenas os fundamentos do Unit Testing, mas também como estruturar seus testes de forma eficiente.
Principais insights
- Unit-Tests ajudam a identificar erros precocemente e garantem que suas funções funcionem como desejado.
- A biblioteca Python unittest oferece uma maneira simples de implementar testes.
- Testes eficazes devem incluir cenários positivos e negativos e verificar os tipos de dados das saídas.
Guia passo a passo
Passo 1: Preparação do seu projeto
Primeiro, você precisa de um arquivo Python onde sua função está definida. No nosso exemplo, chamaremos o arquivo de preisberechnung.py. Aqui, você definirá uma função get_verkaufspreis que recebe o preço de custo e adiciona uma margem.

Passo 2: Crie um arquivo para seus Unit-Tests
Em seguida, crie um novo arquivo que deverá conter os testes para esta função. Vamos chamar este arquivo de preisberechnung_test.py. Aqui, você trabalhará com o módulo unittest.
Para usar o framework, importe-o no início do seu arquivo:

Passo 3: Defina uma classe de teste
Uma classe de teste deve herdar de unittest.TestCase. Isso permite que você organize todos os testes de forma estruturada. Renomeie a classe para PreisberechnungTest para deixar claro o que está sendo testado.

Passo 4: Escreva seus testes
Agora é hora de escrever os testes reais. Comece com um teste que verifica se a saída de get_verkaufspreis é do tipo esperado (float):

Passo 5: Teste entradas inválidas
É igualmente importante testar entradas inválidas. Adicione um teste que verifique se a função lança uma exceção ao ser chamada com entradas inválidas, como None ou uma string:

Passo 6: Execute os testes
Para executar seus testes, você pode fazer isso pelo terminal ou diretamente na sua IDE. Se você estiver usando o terminal, execute o seguinte:
Na sua IDE, como o PyCharm, você pode usar a configuração de execução para rodar os testes.

Passo 7: Verifique os resultados
Se você executar os testes com sucesso, receberá uma saída que informa se todos os testes foram aprovados. Um resultado verde significa que seu código está funcionando como previsto.
Passo 8: Amplie os testes
Além dos testes básicos, você pode adicionar mais cenários relevantes para aumentar a robustez do código. Lembre-se de testar tanto casos positivos quanto negativos para garantir que sua lógica funcione em todas as situações.

Resumo - Primeiro Unit-Test com Python: Fundamentos e Implementação
Escrever Unit-Tests é uma habilidade importante que ajuda a tornar seu código confiável. Neste guia, você aprendeu a escrever seu primeiro Unit-Test em Python, desde a definição da função até a execução e verificação dos resultados. Testes rigorosos melhoram consideravelmente a manutenibilidade do seu código e ajudam a identificar problemas precocemente.
Perguntas Frequentes
Como eu crio um Unit-Test em Python?Para criar um Unit-Test em Python, crie uma classe de teste que herda de unittest.TestCase e escreva testes como métodos dessa classe.
Por que eu deveria escrever Unit-Tests?Unit-Tests ajudam a identificar erros precocemente e garantem que suas funções funcionem como desejado.
Como eu executo Unit-Tests?Você pode executar Unit-Tests através do terminal com python -m unittest [nome do arquivo] ou diretamente em sua IDE.
Quais são boas práticas para Unit-Tests?Uma boa prática inclui testar tanto cenários positivos quanto negativos, além de verificar tipos de dados. A regularidade da execução também é importante para verificar mudanças no código imediatamente.