Node.js / NestJS

Testes end-to-end

Supertest, banco de dados de teste, fixtures, autenticação nos testes, testes de API

20 perguntas de entrevista·
Mid-Level
1

O que é um teste E2E (end-to-end) no contexto do NestJS?

Resposta

Um teste E2E valida o fluxo completo da aplicação, da requisição HTTP até a resposta, passando por todas as camadas (controller, service, database). Diferente dos testes unitários que isolam um componente, os testes E2E verificam que a integração de todos os componentes funciona corretamente. Isso permite detectar bugs de integração que os testes unitários não conseguem capturar.

2

Qual é a biblioteca recomendada pelo NestJS para testes E2E?

Resposta

Supertest é a biblioteca recomendada para testes E2E no NestJS porque permite testar os endpoints HTTP sem iniciar o servidor em uma porta de rede. Ela cria uma instância isolada da aplicação e envia requisições HTTP simuladas diretamente. Isso torna os testes mais rápidos, mais confiáveis e evita conflitos de portas entre testes paralelos.

3

Como obter a instância do servidor HTTP para o Supertest em um teste NestJS?

Resposta

O método app.getHttpServer() retorna a instância do servidor HTTP subjacente (Express ou Fastify) que pode ser passada ao Supertest para fazer requisições de teste. Esse método fica disponível após criar o módulo de teste com Test.createTestingModule(). Ele permite que o Supertest acesse diretamente o servidor sem precisar iniciá-lo em uma porta de rede.

4

Em qual arquivo os testes E2E são tipicamente colocados em um projeto NestJS?

5

Qual método do Supertest permite verificar o status code de uma resposta HTTP?

+17 perguntas de entrevista

Domine Node.js / NestJS para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis