Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

Testes Unitários em Python para Requisições Web

Olá, pessoal! No post de hoje, vamos aprender um tópico fundamental no desenvolvimento de aplicações em Python: testes unitários para requisições web. Neste post, iremos aprender o passo a passo para instalar a biblioteca Unittest2 e utilizá-la para testar requisições web. Para isso, vamos utilizar um código de exemplo que irá mostrar como realizar um teste de verificação de saúde de um servidor. Vamos lá!

Passo 1: Instalando a biblioteca Unittest2 :

A biblioteca Unittest2 é uma extensão do módulo de testes unitários do Python, oferecendo recursos adicionais e melhorias. Para instalá-la, você pode utilizar o gerenciador de pacotes pip. Abra o terminal e execute o seguinte comando:

pip install unittest2

Aguarde enquanto o pip realiza o download e a instalação da biblioteca. Após a conclusão, você estará pronto para começar a utilizar o Unittest2.

Passo 2: Preparando o ambiente Antes de iniciar os testes:

É importante garantir que o ambiente esteja configurado corretamente. Certifique-se de que a biblioteca Requests também está instalada. Caso contrário, você pode instalá-la com o seguinte comando:

pip install requests

Passo 3: Código de exemplo:

Agora que temos tudo configurado, vamos utilizar o código de exemplo abaixo como base para o nosso teste:

import unittest
import requests

HEALTH_CHECK_URL = "http://localhost:5001/"

class HealthCheck(unittest.TestCase):

    def test_health_check(self):
        response = requests.get(HEALTH_CHECK_URL)
        self.assertEqual(response.status_code, 200)
        json_data = response.json()
        self.assertIn("version", json_data)
        self.assertLess(response.elapsed.total_seconds(), 1.0)

if __name__ == '__main__':
    unittest.main()

Vamos analisar cada parte do código:

  • Na linha 3, definimos a URL de verificação de saúde do servidor. Você pode substituí-la pela URL correspondente ao seu ambiente de teste.
  • Na classe HealthCheck (linha 5), criamos uma subclasse de unittest.TestCase, que é a classe base para a criação de testes unitários.
  • O método test_health_check (linha 7) é um exemplo de teste. Nele, utilizamos o módulo requests para fazer uma requisição GET à URL de verificação de saúde. Em seguida, realizamos as seguintes verificações:
    • self.assertEqual(response.status_code, 200): verifica se o código de status da resposta é igual a 200, indicando uma resposta bem-sucedida.
    • json_data = response.json(): obtém os dados da resposta no formato JSON.
    • self.assertIn("version", json_data): verifica se a chave “version” está presente nos dados obtidos.
    • self.assertLess(response.elapsed.total_seconds(), 1.0): verifica se o tempo de resposta da requisição é inferior a 1 segundo.

Passo 4: Executando os testes

Após entendermos o código de exemplo, podemos executar os testes. No final do arquivo, na linha if __name__ == '__main__':, chamamos a função unittest.main(), que irá executar todos os testes definidos na classe HealthCheck. Basta executar o arquivo Python e verificar a saída no terminal.

Com isso, finalizamos nosso tutorial sobre testes unitários em Python para requisições web. Agora você possui os conhecimentos necessários para escrever e executar testes em suas aplicações web. Lembre-se da importância dos testes para garantir a qualidade e o bom funcionamento do seu código. Pratique e aperfeiçoe suas habilidades!

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima