Szkolenie Testy w Angularze
Napiszesz szybkie i stabilne testy komponentów, serwisów i routingu w aplikacji Angular.
Zapytaj o termin Pobierz program (PDF)Testy w projektach Angularowych często psują się przy każdej zmianie, bo
sprawdzają szczegóły implementacji, a do tego wiele z nich opiera się na
Zone.js, fakeAsync i Karmie, od których Angular odchodzi. Po przejściu na
runner Vitest fakeAsync i waitForAsync działają tylko z łatką Zone.js,
a Angular zaleca przepisać je na natywny async i fałszywe zegary Vitest.
Na tym szkoleniu napiszesz testy komponentów, serwisów, formularzy
i routingu, które sprawdzają zachowanie aplikacji, więc przetrwają
refaktoryzację i kolejne wersje Angulara. Pracujesz na Angularze 22:
standalone components, signals, zoneless, Signal Forms i httpResource.
Migrację istniejącego projektu z Karmy omawia szkolenie
Migracja Angulara.
Program
3 dni
- Środowisko testowe
- Co warto testować w aplikacji Angular
- Vitest w Angular CLI (domyślny od wersji 21): konfiguracja i tryb przeglądarkowy
- Istniejące testy w Jasmine i Karmie: co zmienia przejście na Vitest
- Uruchamianie testów w pipeline CI z raportem pokrycia kodu
- TestBed
- Konfiguracja modułu testowego dla standalone components
ComponentFixturei wykrywanie zmian- Wykrywanie zmian bez Zone.js (domyślne od v21) i z OnPush (od v22)
- Podmiana zależności przez providery
- Testowanie komponentów
- Wejścia i wyjścia:
input(),output() - Signals i
computed - Angular Testing Library: zapytania jak użytkownik
- Wejścia i wyjścia:
- Harnessy z Angular CDK
- Testowanie komponentów Angular Material
- Własny harness dla komponentu
- Serwisy i HTTP
- Serwisy bez TestBed i z
TestBed.runInInjectionContext HttpTestingControlleriprovideHttpClientTesting- Testowanie
httpResourceiresource()
- Serwisy bez TestBed i z
- Kod asynchroniczny
- Fałszywe zegary Vitest i natywny
asynczamiastfakeAsync fakeAsynciwaitForAsyncw istniejących testach: łatka Zone.js- Testy w aplikacji zoneless:
whenStableiautoDetectChanges - Strumienie RxJS w testach komponentów i serwisów (testy marble omawiam na szkoleniu RxJS)
- Fałszywe zegary Vitest i natywny
- Formularze
- Signal Forms: walidacja, błędy parsowania i stan pola
- Walidacja asynchroniczna w Signal Forms
- Reactive Forms w istniejącym kodzie
- Routing
RouterTestingHarness- Guardy i resolvery
Dla kogo?
- Dla programistów Angulara, którzy piszą mało testów albo żadnych.
- Dla zespołów, w których testy psują się przy każdej zmianie w kodzie.
- Dla zespołów, które przechodzą na zoneless i Vitest.
Co musisz umieć?
- Pisać komponenty i serwisy w Angularze na poziomie codziennej pracy.
- Znać podstawy RxJS i formularzy w Angularze.
Czego się nauczysz?
- Skonfigurujesz Vitest w Angular CLI i uruchomisz testy w przeglądarce.
- Skonfigurujesz TestBed dla standalone components i podmienisz zależności.
- Przetestujesz komponent z signals z perspektywy użytkownika.
- Przetestujesz formularz zbudowany na Signal Forms i na Reactive Forms.
- Napiszesz testy serwisu HTTP i
httpResourcebez prawdziwego backendu. - Zastąpisz
fakeAsyncfałszywymi zegarami Vitest w aplikacji zoneless. - Użyjesz harnessów CDK do testów komponentów Angular Material.
- Przetestujesz nawigację, guardy i resolvery przez
RouterTestingHarness. - Uruchomisz testy w CI z raportem pokrycia kodu.
Trener
Piotr Kowalski
W branży IT od 2008 roku. Od 2014 jest mentorem dla wielu developerów. Jako trener spędził na sali szkoleniowej kilka tysięcy godzin, a na LinkedIn ma 52 rekomendacje. Każde jego szkolenie to dawka solidnej wiedzy oraz humoru.
Zorganizujmy to szkolenie w Twoim zespole
Napisz, z czym pracujecie i na jakim poziomie jest grupa. Odpowiem z propozycją programu dopasowanego do Waszego projektu.
Zapytaj o szkolenie Pobierz program (PDF) Zobacz wszystkie szkolenia