PUT - Pragmatyczne testy jednostkowe
Radykalnie popraw jakość kodu poprzez systematyczne stosowanie testów
jednostkowych. Sprawdź, czy kod działa zgodnie z Twoimi intencjami!
Odbiorcy szkolenia:
Kurs
przeznaczony
jest dla programistów. Oczekiwanym
przygotowaniem słuchaczy jest
znajomość
podstaw testowania oraz znajomość któregoś z języków zorientowanych
obiektowo np. Java, C#, C++.
Czas trwania:
2 dni (zajęcia prowadzone są w formie wykładu
połączonego z warsztatem).
Nabywane umiejętności:
-
Poznanie metodyki XP (
eXtreme Programming)
-
Umiejętność tworzenia pragmatycznych testów
jednostkowych
-
Biegłość w pisaniu testów z wykorzystaniem
narzędzi z rodziny xUnit (jUnit, inne)
-
Umiejętność optymalnego wykorzystywania
obiektów typu Mock (zaślepka)
-
Sprawność w tworzeniu testów dla aplikacji o
złożonej architekturze
Opis szkolenia:
Testy jednostkowe są niezwykle ważnym narzędziem
programisty. Przeprowadzone podczas pisania aplikacji pozwalają na sprawdzenia poprawności kodu, wyłapanie
błędów i ich szybkie usunięcie. Ale nie tylko! Testy programisty pozwalają
także zakomunikować sposób użycia
kodu przewidziany przez autora. Stanowią zatem „żywą dokumentację” przedstawiającą oczekiwany sposób zachowania
się kodu w różnych warunkach.
Tworzenie systemów bez korzystania z testów
jednostkowych można porównać do pisania programów na kartce. Jest to prawie to
samo, co pisanie programów w środowisku programistycznym. „Prawie” robi różnicę!
Tematy ćwiczeń:
- Budowa prostych testów jednostkowych z wykorzystaniem biblioteki JUnit
- Cykl wykonania testu
- Asercje
- Integracja biblioteki JUnit z narzędziami programistycznymi (Eclipse, Mayen)
- Wykorzystanie obiektów typu Mock na przykładzie EasyMock
-
Symulowanie obiektów współpracujących z obiektem
testowanym
-
Testy typu „Nagraj i odtwórz"
-
Stopnie weryfikacji zgodności z założonym
scenariuszem wywołań
-
Testy jednostkowe warstwy dostępu do bazy danych
- przykłady z użyciem technologii Spring i hibernate
-
Przygotowanie danych testowych
-
Testy przy użyciu bazy danych HSQLDB
-
Raportowanie pokrycia kodu testami: integracja
narzędzia Clover
-
Analiza raportu pokrycia kodu
-
Integracja z narzędziami programistycznymi
Tematy zajęć:
-
Wprowadzenie do metodologii
„eXtreme Programming”
-
Test-driven development
-
Continous integration
-
Programowanie testów jednostkowych
przy pomocy biblioteki JUnit
-
Cykl wykonania testu
-
Dobre i złe praktyki budowania
testów
-
Zaawansowane metody testowania
komponentów
-
Pojęcie "Mock" (Atrapa
obiektu testowanego)
-
Problemy przygotowania złożonego
środowiska i złożonych danych testowych
-
Automatyzacja testów jednostkowych
-
Automatyzacja wykonywania
-
Łączenie testów jednostkowych w
scenariusze testowe
-
Generowanie testów jednostkowych
Zalecane szkolenia poprzedzające:
-
JP - Programowanie w języku
Java