sobota, 8 kwietnia 2017

Statystyki, nie działały.

Testowanie kodu nie jest moją mocną stroną. Wiem jak testy jednostkowe przeprowadzać, ale rzadko je stosuję. Zawsze wydaje mi się, że kod jest za prosty, za łatwy lub za oczywisty, aby wymagało to tworzenia specjalnych testów jednostkowych. Pisanie takich testów nie jest trudne, ale jest czasochłonne. Czasami testowanie prostego kodu zajmuje więcej niż wyłapywanie ewentualnych błędów. Dostałem gorzką nauczkę.

Wydawało mi się, że napisałem prosty kod zliczający kliknięcia i obliczający statystyki. Nie był on w żaden sposób skomplikowany, aczkolwiek struktura nie należała do najbardziej czytelnych. Commit poszedł kilka dni temu, a ja nie zastanawiałem się nad tym, czy to aby faktycznie działa.

Okazało się, że to nie działało od samego początku. Debugowanie kodu nie było zbyt proste, ze względu na brak czytelności. Nie pomagało nawet zastosowanie kilku linii z "print". Dopiero napisanie całego fragmentu kodu od nowa załatwiło sprawę. Nie było to najlepsze rozwiązanie i zostało zastąpione lepszym i bardziej czytelnym. Mimo, że nie przepadam za strukturą zagnieżdżonych słowników, zastosowanie jej do przechowywania ilości markerów i statystyk wydawało się rozwiązaniem najlepszym. Wyłapanie i naprawienie pomyłek zajęło mi sporo czasu.

Zastosowanie testów jednostkowych pozwoliło by na wyłapanie tych błędów na samym początku. Ponadto nie stracił bym niepotrzebnego czasu na debugging kodu, który i tak ostatecznie został usunięty. Okazuje się również, że czasami nawet prosty w założeniu kod może sprawiać problemy i zawierać błędy.

Brak komentarzy:

Prześlij komentarz