Czy tester oprogramowania musi umieć programować?

Chcesz zostać testerem i nie wiesz, czy uczyć się programowania? Sprawdź ten wpis!

9/3/2024

Odpowiedź na to pytanie mógłbym skrócić do jednego zdania - nie, tester oprogramowania nie musi umieć programować. Ale skoro napisałem ten wpis, to zapewne domyślasz się, że temat wcale nie jest taki oczywisty. Jasne, w branży znajdziemy przykłady testerów odnoszących sukcesy w zawodzie bez umiejętności pisania kodu, ale znajomość przynajmniej fundamentów programowania niesie za sobą wiele korzyści - w tym finansowych. I to właśnie korzyściami się dzisiaj zajmiemy.

Łatwiejsze zrozumienie technicznych tematów

Przede wszystkim, umiejętność programowania wiąże się z (większym lub mniejszym, w zależności od poziomu zaawansowania) zrozumieniem technicznych aspektów projektu. Jeśli rozumiesz zmiany wprowadzone w kodzie, to lepiej je przetestujesz. I wcale nie chodzi mi tu o dogłębną analizę każdej linii kodu. Mam na myśli ogólne pojęcie o procesach zachodzących na back-endzie aplikacji (back-end to warstwa aplikacji, której "nie widzą" użytkownicy - wysyłanie requestów do API, wykonywanie zapytań w bazie danych itd.). Ktoś powie, że da się to osiągnąć bez napisania nawet jednej linijki kodu. To prawda, ale z podstawami programowania jest to szybsze.

Pomocna jest też świadomość przyczyn błędów. Oczywiście, możesz poprawnie zgłosić błąd nie mając pojęcia, dlaczego on wystąpił. Ale dopiero rozumiejąc źródło problemu wyciągniesz z buga wszystkie szczegóły i ułatwisz programiście naprawę. Nie ograniczasz się wyłącznie do klikania po aplikacji, ale też wyciągasz wnioski z wykrytych błędów i pomagasz w ich zapobieganiu.

Ułatwione testy regresji

Znajomość fundamentów programowania to nie tylko sprawne poruszanie się po technicznej części produktu, ale też ułatwione testy regresji. Nie oszukujmy się - nikt nie ma czasu na pełną regresję. Zresztą, większość aplikacji jest na tyle rozbudowana, że przetestowanie wszystkich przypadków jest praktycznie niemożliwe czasowo.

Dlatego testy regresji skupiają się na obszarach zagrożonych ryzykiem niepożądanych zmian. Jak to ocenić? Poprzez czytanie kodu - sprawdzając modyfikacje kodu dowiesz się, na co mogły wpłynąć wprowadzone zmiany. Jasne, możesz zapytać o to programistę, ale samodzielna praca połączona z odpowiedziami autora kodu daje najlepsze efekty.

Większe możliwości rozwoju

Więcej tego typu obrazków znajdziesz na moim Instagramie.

Istotne są również większe możliwości rozwoju. Podstawy programowania (i tym samym obeznanie techniczne) pchają Cię w kierunku QA Engineera zajmującego się nie tylko testowaniem aplikacji, ale też szeroko pojętym utrzymaniem jakości. Więcej o tym stanowisku pisałem w osobnym wpisie - Co robi QA Engineer?.

Naturalną drogą jest też automatyzacja testów. Tutaj bez pisania kodu się nie obejdzie. Umiejętność programowania połączona ze znajomością frameworka do automatyzacji (np. Cypress, Playwright czy Selenium) znacząco poszerza zakres dostępnych ofert pracy. Oczywiście, nauka automatyzacji to niejedyna ścieżka kariery - ale niezależnie od wyboru (testy API, bezpieczeństwo czy analiza ryzyka), programowanie na pewno Ci nie zaszkodzi. Inaczej mówiąc - techniczny tester po prostu zarabia więcej.

Czy warto uczyć się programowania jako tester?

No cóż, właściwie cały wpis odpowiada na to pytanie. Jeżeli jednak argumenty o korzyściach płynących z obeznania technicznego i zwiększonych możliwościach kariery Cię nie przekonały, to mam w zanadrzu coś jeszcze. W branży krąży wiele mitów o testowaniu - w tym ten mówiący o niskim prestiżu roli testera. Mylne przekonanie o prostocie testów zmienisz pokazując, że doskonale wiesz, co robisz. Nie bądź stereotypowym klikaczem ślepo podążającym za przypadkami testowymi. Pokaż, że rozumiesz testowaną przez Ciebie aplikację. Pokaż, że nie wykrywasz błędów z przypadku. A pomoże Ci w tym (między innymi) nauka programowania.

Co o tym myślisz? Daj znać w komentarzu:

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.

Co więcej, otrzymasz darmowego ebooka - checklisty dla testerów. W środku znajdziesz listy ułatwiające testy użyteczności, funkcjonalności czy zakłóceń w aplikacjach webowych i mobilnych.

Polecane wpisy:

Sprawdź też moje social media:

Dziękuję, że czytasz mojego bloga!

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

Radosław Wasik
Radosław Wasik