Trwają zapisy do grupy

Testy automatyczne i Test Driven Development (TDD) w JavaScript

Testowanie automatyczne pozwala szybciej dostarczać oprogramowanie, przy tym unikając typowych błędów oraz regresji - dzięki temu programista może poświecić więcej czasu na dostarczanie funkcjonalności, a nie szukanie błędów

2150 PLN+23% VAT (2644 PLN brutto / 1 os.)

Czas trwania szkolenia:2 dni (16h)

Poziom zaawansowania:

Kod kursu:JS/TDD

bddtdde2e

Dostępne terminy

  • Termin
  • Trener
  • Cena
  • Zapis
  • Lokalizacja

Termin:

12 września
Trwają zapisy na szkolenie

Trener:

Mateusz Kulesza

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Termin:

24 października
Trwają zapisy na szkolenie

Trener:

Mateusz Kulesza

Cena:

2150 PLN netto
Ikona podpowiedziDowiedz się więcej o cenach szkoleń - zapraszamy do kontaktu
+23% VAT

Lokalizacja:

Zdalne
Zdalne
Ikona podpowiedziZapytaj o inne lokalizacje - w tym celu skorzystaj z chatu

Forma szkolenia

Interesuje Cię szkolenie stacjonarne?

Dostępne terminy

Interesują Cię inne terminy?

Testy automatyczne i Test Driven Development (TDD) w JavaScript

Cele szkolenia

  • Zaznajomienie z narzędziami oraz metodyką tworzenia testów na każdym poziomie oraz według sprawdzonych podejść

Dla kogo?

  • Programiści chcący pisać lepszy i testowalny kod oraz poznać techniki test first oraz design by specification

Zalety

  • Szkolenie skupia się na budowaniu praktycznych umiejętności na każdym poziomie testów - od testowania jednostkowego, przez integrację po testowanie funkcyjne e2e
  • Podczas szkolenia uczestnicy poznają praktyczne techniki pracy i różne podejścia do testowania, w tym podejście TDD, czyli najpierw piszemy testy, a potem kod
  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
  • Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how

Wymagania

  • Podstawowa znajomość JavaScript

W cenie otrzymasz:

  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia
  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Program

Pobierz program w PDF

Wprowadzenie

  • Dlaczego testować kod?
  • Rodzaje aplikacji i testowanie
  • Piramida testów - wady i zalety każdej warstwy

Testy statyczne

  • Statyczna analiza kodu
  • Narzędzia i Reguły
  • Dobre praktyki
  • Automatyzacja, wtyczki i githooks

Testy Jednostkowe

  • Konfiguracja narzędzi
  • Struktura i nazewnictwo testów
  • Asercje Jasmine i Chai
  • Raportowanie
  • Zamienniki - Stubs i Mocks
  • Testowanie Czasu - Asynchroniczność
  • Wzorzec Arrange/Act/Assert
  • Testy parametryczne i fuzztesty

Testy Integracyjne

  • Testy współpracujących obiektów
  • Test Driven Design - testy najpierw
  • Cykl Red-Green-Refactor
  • Wykrywanie regresji
  • Pokrycie kodu testami
  • Testowanie interfejsów
  • Testowanie zapytań HTTP
  • Metoda czarnej skrzynki - blackbox testing
  • Programowanie kontraktowe
  • Metoda migawek - Snapshot testing
  • Tworzenie utrzymywalnych i stabilnych testów

Refaktoryzacja kodu

  • Testowalne aplikacje
  • Code smells, antywzorce a dobre praktyki
  • Modularna aplikacja i enkapsulacja
  • Refaktoryzacja do jednej odpowiedzialności
  • Refaktoryzacja do otwarte zamknięte
  • Refaktoryzacja do segregowanych kontraktów
  • Refaktoryzacja do odwróconych zależności
  • Testowanie z dependency injection

Testy End-to-End

  • Omówienie koncepcji testów e2e
  • Wady i zalety testowania w przeglądarce
  • Narzędzia i środowisko e2e
  • Porównanie Selenium, WebDriver, Protractor, Cypress i inne
  • BDD - Behavior Driven Development / Specification by Example
  • Testy akceptacyjne
  • Scenariusze testowe
  • Akcje asynchroniczne
  • Mockowanie zależności

Testy a Ciągła Integracja i Dostarczanie (CD/CI)

  • Automatyzacja Testów
  • Synchronizacja z Repozytorium kodu
  • Testy jako część Code Review
  • Raportowanie wyników testów
  • Omówienie Continuous deployment and delivery

Autorem szkolenia jest Mateusz Kulesza

Senior developer, konsultant i szkoleniowiec. Pracował z wieloma polskimi i zagranicznymi firmami nad projektami z sektorów e-learning, reklamy, e-commerce, transportu oraz bankowości i finansów. Z technologiami Internetowymi pracuje od ponad 10 lat. Pasjonat technologii front-end, JavaScript'u a także marketingu internetowego i e-commerce.