2
respostas

Prova - duas pegadinhas

Pessoal a prova tem duas pegadinhas, talvez pelo tempo que esta publicada....

A primeira, no arquivo do workflow do GitHub Action, use Python 3.8 na linha 20, pois no Python 3.9 um dos modulos da erro:

   AttributeError: module 'werkzeug' has no attribute '__version__'

A segunda pegadinha é no tests/test_app.py, depois que você faz a alteração da app para ter mais metricas e o endpoint /metrics esta disponivel, você tem que mudar as linhas abaixo dentro de def test_request_counter(client):

def test_request_counter(client):
"""Testa se o contador de requisições funciona"""
response1 = client.get('/metrics')
count1 = response1.get_json()['total_requests']

response = client.get('/')

response2 = client.get('/metrics')
count2 = response2.get_json()['total_requests']

assert count2 > count1

2 linhas são pra receber o total_requests do /metrics, visto que no / esse valor não sera mais mostrado, e adicionamos no meio um response para que o contador de requests seja incrementado, senão o total de requests sempre sera 1 e nunca maior que um, e ai o assert não valida e nunca o teste vai dar certo...

2 respostas

Uma terceira pegadinha, sempre que você mudar o arquivo de produção app.py, lembre-se de refazer o build do docker build da sua imagem.

Olá, Leonardo. Ótima contribuição para a comunidade.

Agradeço por compartilhar esses pontos de atenção. Mapear esses detalhes ajuda muito quem está realizando o curso e evita travamentos por questões de versão ou lógica de teste.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!