Testowanie podczas programowania
Jak lokalnie testować aplikację podczas programowania.
Lokalne testy jednostkowe
Przed przesłaniem swoich aktualizacji upewnij się, że przechodzą one wszystkie testy jednostkowe. Wykonaj poniższe kroki, aby uruchomić testy lokalnie:
-
Skopiuj plik
.env.examplew folderze/apii zmień jego nazwę na.envcp .env.example ./api/.env -
Dodaj
NODE_ENV=CIdo swojego pliku/api/.env -
npm run test:client -
npm run test:api -
npm run test:packages:api -
npm run test:packages:data-provider -
npm run test:packages:data-schemas
Uruchamianie testów dla poszczególnych obszarów roboczych (Workspaces)
Testy są uruchamiane przy użyciu Jest z odpowiednich katalogów obszarów roboczych (workspace directories). Określ konkretne pliki testowe za pomocą wzorców:
cd api && npx jest <pattern>
cd packages/api && npx jest <pattern>
cd packages/data-provider && npx jest <pattern>
cd packages/data-schemas && npx jest <pattern>
cd client && npx jest <pattern>Filozofia testowania
- Preferuj rzeczywistą logikę zamiast mocków. Mockuj tylko to, czego nie można kontrolować lokalnie, takie jak zewnętrzne API HTTP, usługi z ograniczeniami liczby zapytań (rate-limited) oraz niedeterministyczne wywołania systemowe.
- Używaj szpiegów (spies), gdy musisz potwierdzić, że rzeczywiste funkcje zostały wywołane z oczekiwanymi argumentami.
- Użyj
mongodb-memory-serverdo testów opartych na MongoDB, aby zapytania i walidacja schematu były uruchamiane w oparciu o rzeczywiste zachowanie bazy danych. - Obsługa stanów ładowania, powodzenia i błędów dla przepływów interfejsu użytkownika/danych.
Wskazówka
Użyj test/layout-test-utils do renderowania komponentów w testach frontendowych.
Jaka jest ta instrukcja?