Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

243
Visualizações
¿Cómo probar en FastAPI que el cliente llama al método correcto de punto final?

Estoy tratando de hacer una prueba unitaria que verifique si se llamó al método del punto final FastAPI deseado. Hizo mock.spy y durante las pruebas genera un error de que el método se llamó 0 veces. Aunque la salida incluso tiene un texto de verificación del método de punto final. ¿Cómo soluciono esto?

Mi prueba unitaria:

 client = TestClient(main.app) pytestmark = pytest.mark.unit @pytest.mark.unit def test_get_best_authors(mocker: MockFixture): mocker.spy(main, 'best_authors') client.get('/luchshie-avtori').json() assert main.best_authors.assert_called_once()

Mi código de punto final en main.py:

 @app.get("/luchshie-avtori") async def best_authors(): print('test ping') return requests.get('', params={'return': 'json'}).json()
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Lo que sucede es que el decorador app.get obtiene el objeto real de su función y lo almacena internamente en su aplicación FastAPI.

Cuando se burla de best_authors , no le importará a FastAPI, ya que usará el objeto que había almacenado previamente.

Honestamente, no lo probaría de esta manera. Tendría una prueba unitaria donde pruebo el comportamiento de best_authors .

Lo que en este caso sería burlarse requests.get y asegurarse de que se llamara y que el resultado se devolviera correctamente.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda