Node.js / NestJS

Testy end-to-end

Supertest, testowa baza danych, fixtures, uwierzytelnianie w testach, testowanie API

20 pytań z rozmów·
Mid-Level
1

Czym jest test E2E (end-to-end) w kontekście NestJS?

Odpowiedź

Test E2E weryfikuje kompletny przepływ aplikacji, od żądania HTTP do odpowiedzi, przez wszystkie warstwy (controller, service, database). W przeciwieństwie do testów jednostkowych, które izolują komponent, testy E2E sprawdzają, czy integracja wszystkich komponentów działa poprawnie. Pozwala to wykrywać błędy integracji, których testy jednostkowe nie są w stanie wychwycić.

2

Jaka biblioteka jest zalecana przez NestJS do testów E2E?

Odpowiedź

Supertest to zalecana biblioteka do testów E2E w NestJS, ponieważ pozwala testować endpointy HTTP bez uruchamiania serwera na porcie sieciowym. Tworzy odizolowaną instancję aplikacji i wysyła symulowane żądania HTTP bezpośrednio. Dzięki temu testy są szybsze, bardziej niezawodne i unikają konfliktów portów między równoległymi testami.

3

Jak uzyskać instancję serwera HTTP dla Supertest w teście NestJS?

Odpowiedź

Metoda app.getHttpServer() zwraca instancję bazowego serwera HTTP (Express lub Fastify), którą można przekazać do Supertest, aby wykonywać żądania testowe. Metoda ta jest dostępna po utworzeniu modułu testowego za pomocą Test.createTestingModule(). Pozwala ona Supertest na bezpośredni dostęp do serwera bez konieczności uruchamiania go na porcie sieciowym.

4

W którym pliku zwykle umieszcza się testy E2E w projekcie NestJS?

5

Która metoda Supertest pozwala sprawdzić status code odpowiedzi HTTP?

+17 pytań z rozmów

Opanuj Node.js / NestJS na następną rozmowę

Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.

Zacznij za darmo