Szkolenie: Testy automatyczne i Test Driven Development (TDD) w JavaScript
Szkolenie Testy automatyczne i TDD w JavaScript przygotowuje do efektywnego testowania aplikacji JS, obejmuje testy jednostkowe, integracyjne, e2e, TDD, BDD, automatyzację oraz najlepsze praktyki zapewniania jakości oprogramowania
- Trenerzy praktycy
- Kameralne grupy
Czas trwania szkolenia:2 dni (16h)
Kod kursu:JS/TDD
Testy automatyczne i Test Driven Development (TDD) w JavaScript
Cele szkolenia
Szkolenie przygotowuje do samodzielnego projektowania, pisania i utrzymywania testów automatycznych na różnych poziomach aplikacji JavaScript
Szkolenie uczy stosowania metodyki Test Driven Development oraz praktycznych technik testowania jednostkowego, integracyjnego i end-to-end
Szkolenie rozwija umiejętność wykrywania i eliminowania błędów oraz regresji poprzez wdrażanie automatyzacji testów w procesie wytwarzania oprogramowania
Dla kogo?
Programiści JavaScript z podstawową znajomością języka, chcący rozwijać umiejętności w zakresie testowania automatycznego
Osoby odpowiedzialne za jakość oprogramowania, pragnące wdrażać testy jednostkowe, integracyjne i e2e w projektach webowych
Developerzy zainteresowani praktycznym poznaniem TDD, BDD oraz automatyzacji testów w środowisku JavaScript
Efekty kształcenia
Uczestnik projektuje i implementuje testy jednostkowe, integracyjne oraz end-to-end
Uczestnik analizuje i wdraża metodykę Test Driven Development w codziennej pracy
Uczestnik wykorzystuje narzędzia do automatyzacji testów i raportowania wyników
Uczestnik rozpoznaje i eliminuje typowe błędy oraz regresje w kodzie
Uczestnik stosuje dobre praktyki testowania i refaktoryzacji kodu
Uczestnik porównuje i dobiera narzędzia do testowania JavaScript
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 szkolenia
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
Wybrane opinie
Przeczytaj pozytywne opinie pochodzące z ankiet satysfakcji z naszych szkoleń wypełnianych wyłącznie przez ich uczestników po realizacji usługi


