Podczas pisania aplikacji tworzę różne metody, jedne proste, inne trudne. Zdarza mi się wracać do nich i je modyfikować. W pewnym momencie natrafiam na problem błędów w działaniu. Okazuje się, że jedna ze zmian lub nowa metoda działa niepoprawnie. Teraz trzeba debugować całą aplikację i zgadywać gdzie może znajdować się błąd. Najlepszym rozwiązaniem na to jest robienie tekstów.

Testy jednostkowe to tak jakby mikro aplikacyjki, które sprawdzają działanie poszczególnych metod i klas. Jeśli pisząc metodę, będę na bieżąco pisał do niej takie testy, wtedy minimalizuję prawie do zera możliwość popełnienia błędu.

➡ Na czym to polega? Najprostszym z testów jest podanie danych wejściowych do metody i sprawdzenie, czy wynik jest zgodny z przewidywanym przez nas.

➡ Wydaje się bezsensowne? Faktycznie, przy aplikacji składającej się z 3 prostych metod tak jest, ale gdy nasz program urośnie do kilkuset lub kilku tysięcy metod, wtedy takie testy za nas sprawdzają cały czas poprawność logiki.

Przy skomplikowanych metodach też jest to bardzo przydatne. Np. musimy napisać metodę, która policzy, ile potrzebujemy wózków w supermarkecie, aby kupić wodę mineralną w promocji? Zakładamy, że wózek mieści 20 wód, ostatni wózek zmieści dodatkowe 3 butelki, a to, co nie wejdzie, ładujemy do koszyka, który mieści 6 butelek. Czy jesteś w stanie od razu bezbłędnie napisać taką metodę? Pisałem podobną (bardziej rozbudowaną) i dopiero po napisaniu ponad 30 testów, które sprawdziły wszystkie skrajne przypadki, udało mi się doprowadzić algorytm do porządku.

Teraz już wiesz, że testy jednostkowe są potrzebne. W kolejnym wpisie pokażę Ci  jak napisać własne testy.