Szkolenie
Test Driven Development w Angularze 

Zapraszamy na 3-dniowe intensywne warsztaty szkoleniowe z TDD w Angularze

Testowanie nie jest łatwe. TDD tym bardziej. Sprawę dodatkowo komplikuje fakt, że testy można pisać na różne sposoby i na różnych poziomach. Sam Angular i Rx.js nie ułatwiają sprawy i jest to dodatkowy element, który wymaga od programisty podjęcia konkretnych decyzji, które będą miały wpływ na to jak czytelne i dobre będą testy. 

Testy jednostkowe i nierozerwalnie związane z nimi TDD to narzędzia, które pozwalają na pisanie kodu wysokiej jakości, który robi dokładnie to, co jest wymagane. Na dodatek dają programiście możliwość refactoringu kodu bez niepotrzebnej presji, czy wprowadzone zmiany nie wprowadzą błędów.

Jednak same testy jednostkowe to nie wszystko – nie sprawdzają one tego, jak aplikacja się zachowuje w interakcji z żywym użytkownikiem. Tutaj z pomocą przychodzą testy end-to-end. Ich celem jest sprawdzenie, czy użytkownik będzie mógł skorzystać z poszczególnych funkcji aplikacji bez wnikania w to, jak te funkcje są zaimplementowane.
Testowanie kodu opartego o Rx.js i NgRx również ma swoje specyficzne wymagania, stąd osobna część szkolenia poświęcona będzie tym zagadnieniom.

W efekcie programista przystępujący do szkolenia zostanie wyposażony w zestaw narzędzi pozwalających mu na pisanie kodu zawierającego mniej błędów, który można bezpiecznie modyfikować bez utraty funkcjonalności.

Dla kogo?

Warsztaty są skierowane do osób mających minimalne podstawy w Angularze 2+, m. in.:

  • Tworzenie komponentów 
  • Przepływ danych pomiędzy komponentami (inputs / outputs / services)
  • Umiejętność tworzenia zapytań http
  • Umiejętność zaimplementowania formularza
  • Podstawowa znajomość routingu

Agenda

Testy jednostkowe

  • Czym w ogóle są testy jednostkowe? Jak je pisać? Przegląd narzędzi.
  • Testowanie filtrów i serwisów.
  • Testowanie komponentów i dyrektyw.

Korzystanie z serwisów i przygotowanie danych do wyświetlenia.

  • Jak sobie radzić z asynchronicznością?

 Testowanie kodu asynchronicznego wykorzystującego setTimeout i setInterval

  • Jak sobie radzić z asynchronicznością?

Testowanie kodu asynchronicznego wykorzystującego callbacki, Promise’y i Rx.js

  • TestBed – przygotowanie i zastosowanie.
  • Http – testowanie kodu wykorzystującego serwis Http. Co zrobić z backendem podczas testów?

Testy UI i e2e (end to end), TDD

  • Testowanie komponentów i dyrektyw.
  • Weryfikacja UI i jego zachowania. Korzystanie z ComponentFixture i DebugElement
  • Testy e2e – charakterystyka, cele i przegląd narzędzi.
  • Wzorzec Page Object.
  • Techniki przygotowania i/lub symulowania backendu:
    • Fixtures
    • Static mock
    •  Dynamic mock
  • Przygotowanie testów e2e do wcześniej przygotowanej aplikacji.
  • TDD – teoria, zastosowanie, wady i zalety.

Testowanie kodu reaktywnego + warsztaty

  • Opcjonalnie wprowadzenie do RxJS i @ngrx/store (jeśli zespół nie używa ich jeszcze)
  • Testowanie RxJS oraz @ngrx/store:
    • testowanie strumieni
    • akcje, action creator
    • reducery
    • dispatchowanie akcji z komponentów
  • Warsztaty TDD i utrwalenie wiadomości – przygotowanie prostej aplikacji korzystając z metodyki TDD.

100% praktyki

Jak wszystkie nasze szkolenia, to również prowadzone jest w formie warsztatów i zakłada nacisk na praktykę z ograniczeniem teorii do wymaganego do sprawnej pracy minimum. Każdy etap szkolenia poprzedzony jest krótkim wstępem teoretycznym, po którym następuje część praktyczna. Szczególnie ważne jest to w przypadku testowania i TDD, których nauczenie się jest niemożliwe bez praktyki.

Informacje praktyczne

Kiedy?
Warsztaty wewnętrzne: termin do indywidualnego ustalenia z Waszym zespołem

Gdzie?
Dowolne miasto w Polsce

Uczestnicy
Od 4 do 12 osób

Kontakt i zapytania ofertowe
Piotr Zwoliński, CEO
[email protected]
Tel: + 48 784 811 497

tdd
tdd

Pobierz agendę tego szkolenia w formacie PDF:
agenda_szkolenia_developers_peak.pdf

Zainteresowany szkoleniem?
Piotr Zwoliński, CEO
[email protected], tel: + 48 784 811 497