0Pricing
Sveltejs Academy · Lekcja

Mockowanie modułów i Fetch

Mockuj zewnętrzne moduły, wywołania fetch i moduły SvelteKit w testach jednostkowych.

Mockowanie modułów i Fetch to bezpłatna lekcja Sveltejs Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Sveltejs Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Dlaczego używać atrap

Testy powinny izolować testowaną jednostkę. Twórz atrapy zewnętrznych modułów, aby unikać wywołań sieciowych i niestabilnych testów.

vi.mock

Vitest udostępnia vi.mock do zastępowania modułów.

vi.mock("$lib/api", () => ({ getUser: () => ({ name: "Mock" }) }));

Atrapa fetch

Użyj vi.spyOn(global, "fetch") lub biblioteki takiej jak msw, aby realistycznie tworzyć atrapy API.

vi.spyOn(global, "fetch").mockResolvedValue({ json: () => ({ items: [] }) });

Podnoszenie modułów

Wywołania vi.mock są przenoszone na początek pliku. Umieszczaj je na jego początku.

Przywracanie atrap

Użyj vi.restoreAllMocks() w afterEach, aby posprzątać po teście.

MSW dla HTTP

Mock Service Worker przechwytuje żądania na poziomie sieci, zapewniając realistyczne działanie API w testach.

Tworzenie atrap modułów SvelteKit

Możesz tworzyć atrapy dla $app/stores, $app/navigation i innych importów SvelteKit na potrzeby izolowanych testów.

Atrapy bezpieczne typowo

Używaj vi.fn() z sygnaturami typowanymi, aby tworzyć szpiegi bezpieczne typowo.

Czyszczenie między testami

Używaj vi.clearAllMocks() lub konfiguracji w beforeEach, aby każdy test rozpoczynał się od czystego stanu.

Atrapowanie częściowe

Twórz atrapy tylko dla wybranych eksportów modułu, pozostawiając pozostałe w rzeczywistej postaci.

Rzeczywiste implementacje a atrapy

Nadmierne używanie atrap może pozbawić testy znaczenia. Tam, gdzie jest to rozsądne, testuj integrację z rzeczywistymi implementacjami.

Szybki test

Co robi vi.mock?

Podsumowanie

Używaj vi.mock i szpiegów do izolowania jednostek; rozważ MSW, aby realistycznie atrapować API na poziomie sieci.

Często zadawane pytania

Czy lekcja „Mockowanie modułów i Fetch” jest bezpłatna?

Tak — pełny tekst „Mockowanie modułów i Fetch” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Sveltejs Academy, przejdź na CoddyKit PRO. Kurs Sveltejs Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Mockowanie modułów i Fetch”?

Mockuj zewnętrzne moduły, wywołania fetch i moduły SvelteKit w testach jednostkowych. Ćwiczysz Sveltejs Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Sveltejs Academy?

Nie wymagamy żadnego doświadczenia. Sveltejs Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Mockowanie modułów i Fetch”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Sveltejs Academy?

Tak. Każda lekcja Sveltejs Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Konfiguracja Vitest dla projektów Svelte
  2. @testing-library/svelte: render i fireEvent
  3. Testowanie store'ów i reaktywności
  4. Mockowanie modułów i Fetch
← Powrót do Sveltejs Academy