Nie odkładaj testów na później

Obszerne testy wcale nie są takie straszne.

6/19/2024

Jestem prawie pewien, że każdy z testerów doświadczył kiedyś sytuacji, w której po prostu nie mógł zabrać się za testy. Czasem jest to gorszy dzień, innym razem znudzenie danym oprogramowaniem, ale zdarza się też, że przyczyną są obszerne (wręcz przerażające) testy - i tym ostatnim problemem zajmiemy się w dzisiejszym wpisie. A jeśli Wam się to nie zdarzyło, to prawdopodobnie dopiero weszliście do branży albo jesteście nieludzkimi maszynami pracy 😛

Prokrastynacja a testowanie oprogramowania

Istnieje ładne pojęcie opisujące to zjawisko - prokrastynacja, czyli tendencja do odkładania zadań na później. Towarzyszy nam w każdym aspekcie życia - zaczynając od codziennych obowiązków, poprzez pracę zawodową, a kończąc na zadbaniu o własne zdrowie. Wiecie, ciągłe okłamywanie siebie - "jutro na pewno to zrobię!".

nie odkładaj testów na później
nie odkładaj testów na później
mem - do all the the things tomorrow
mem - do all the the things tomorrow

W świecie testowania oprogramowania jest to szczególnie szkodliwe, bo każde opóźnienie może prowadzić do poważnych konsekwencji - późnego wykrycia błędów, spadku jakości produktu czy niezadowolenia klientów. Nie ma co ukrywać, ż testowanie oprogramowania to kluczowy etap w cyklu życia produktu wymagający skrupulatności, dokładności i terminowości. Odkładanie testów na później zwiększa ryzyko, że błędy i niedociągnięcia nie zostaną wykryte na czas, co może prowadzić do kosztownych poprawek i opóźnień w projekcie.

Nie będę zgrywał eksperta psychologii, ale podzielę się z Wami sposobami, które pomagają mi walczyć z prokrastynacją - szczególnie w kontekście testowania oprogramowania. U mnie sprawdza się planowanie i prioryteryzacja (nie ma to jak dobra lista zadań) oraz podział obowiązków na mniej przytłaczające części. Przygotowanie środowiska pracy to też dobra rzecz. Postarajcie się wyłączyć powiadomienia na komputerze i telefonie. Wiem, wiem, z powiadomieniami z pracy nie zawsze jest tak łatwo, ale tych prywatnych powinniście się pozbyć.

Nie możemy bać się obszernych testów

Jeśli chodzi o obszerne testy, tutaj świetnym rozwiązaniem jest wspomniany podział zadania na mniejsze części. Testowanie może wydawać się przytłaczające, zwłaszcza gdy mamy do czynienia z dużymi projektami, które wymagają wielu różnych testów - tam regresja, tu jakieś testy API, a jeszcze przydałoby się rzucić okiem na wydajność. Rozłożenie testów na mniejsze, bardziej zarządzalne części może pomóc w przezwyciężeniu oporu przed rozpoczęciem pracy. Wiadomo, nie ma tu uniwersalnego planu, który sprawdzi się w każdej aplikacji, ale myślę, że wiecie co mam na myśli. Po prostu nie traktujcie oprogramowania jako jednej wielkiej całości, tylko podzielcie je na powiązane ze sobą pojedyncze obszary - łatwiej jest przetestować kilka mniejszych fragmentów.

Dodatkowo, automatyzacja testów może znacząco zmniejszyć obciążenie, pozwalając skupić się na bardziej skomplikowanych scenariuszach testowych wymagających ludzkiej kreatywności i intuicji. Regularne i systematyczne testowanie (zamiast odkładania go na później) zapewnia ciągłą kontrolę jakości i zmniejsza ryzyko poważnych problemów w przyszłości.

Wsparcie zespołu

W tekście "Nie bój się pytać" podkreślałem, że nie ma niczego złego w proszeniu zespołu o pomoc. W temacie prokrastynacji jest podobnie. Testowanie nie powinno być postrzegane jako zadanie jednostkowe, ale jako wspólny wysiłek całego zespołu. Regularna komunikacja i współpraca w zespole mogą pomóc w rozłożeniu zadań i zwiększeniu motywacji do ich terminowego wykonania. Wspólne planowanie testów, dzielenie się postępami oraz wzajemne wsparcie mogą znacząco zmniejszyć skłonność do odkładania zadań.

Pair testing, czyli testowanie w parach, jest jednym z efektywnych sposobów na zwiększenie produktywności i jakości testów. Możliwość wymieniania się zadaniami z innym testerem pozwala odetchnąć od męczonego przez dłuższy czas tematu. Serio, przekazanie testów danej funkcjonalności daje ogromną ulgę, a przy okazji zwiększa szansę na znalezienie bugów, bo każdy sprawdza oprogramowanie w nieco inny sposób.

Jasne, część (a może nawet większość) z Was nie ma przyjemności pracować z przynajmniej jednym innym testerem, ale przypominam, że za jakość nie odpowiada pojedyncza osoba, a cały zespół. Natłok testów Was przytłacza? Poproście programistów o pomoc. Bo jak już wspomniałem - nie ma w tym nic złego.

Chcesz być na bieżąco? Zapisz się do newslettera!

W każdy czwartek o 10:00 wyślę Ci wiadomość o moich nowych wpisach. Oprócz tego, dorzucę ciekawe artykuły, filmy czy inne materiały ze świata IT - oczywiście, związane głównie z testowaniem oprogramowania. To świetny sposób na naukę i ciągłe zdobywanie wiedzy.

Dziękuję, że czytasz mojego bloga!

Masz jakieś pytania? Z chęcią odpowiem :)

Radosław Wasik
Radosław Wasik