Co robi tester oprogramowania na co dzień?

Jeśli jeszcze jesteś osobą spoza branży, to pewnie czasem zastanawiasz się na czym polega praca testera oprogramowania i jak wygląda typowy dzień pracy w tym zawodzie. Dlatego poniżej przedstawiam listę najczęstszych zajęć specjalistek i specjalistów kontroli oraz zapewnienia jakości oprogramowania. Picie kawy pomijam 🙂


Wolisz oglądać niż czytać? Wersja wideo jest dostępna na YouTube.


Wykonywanie testów

Ten obowiązek można znaleźć niemal w każdej ofercie pracy dla testera oprogramowania i, co za tym idzie, często dominuje on nad innymi aktywnościami. Może mieć jednak różne formy.

Manualne wykonywanie przypadków testowych

Ma to miejsce, gdy realizuje się krok po kroku scenariusz, opisany we wcześniej stworzonym na podstawie m.in. wymagań dokumencie – przypadku testowym (test case). Zadanie polega na wykonywaniu opisanych akcji w systemie i porównywaniu spodziewanych rezultatów z rzeczywistymi. Różnice pomiędzy nimi powinny zostać zaraportowane i najczęściej są one defektami systemu.

Testowanie eksploracyjne (często oparte na kontekście)

Generalnie jest to wykonywanie testów bez uprzednio zdefiniowanych kroków. Największą wartość ma wtedy, gdy tworzony ad-hoc scenariusz bazuje na wiedzy i kontekście, w jakim system jest używany przez użytkowników końcowych. Również i takie testowanie wymaga dokumentowania (przykładowo test charter).

Testowanie wspomagane automatami

Tam, gdzie to uzasadnione, zamiast testów manualnych mogą być automatyczne. Niektóre z nich są wywoływane o zaplanowanej porze bez udziału człowieka (np. jako element Continuous Integration), ale interpretacja ich wyników to już zwykle zadanie testera. Istotne jest tu odfiltrowanie problemów powodowanych przez nieodpowiednią konfigurację czy nieaktualny skrypt testujący i identyfikacja rzeczywistych defektów systemu, którego jakość mierzymy.

 

Raportowanie

To dokumentacja i następstwo wykonanych testów. Obejmuje wpisane bug-i w systemie do śledzenia defektów oraz informacje co, kiedy, gdzie, jak i przez kogo zostało przetestowane. Większość z tych danych jest często zbierana przez narzędzia do zarządzania testami. W zależności od organizacji, mogą powstawać też dodatkowe raporty dla interesariuszy lub klientów.

 

Retesty

Wpisane defekty, zwłaszcza te istotne, są prędzej czy później poprawiane przez programistów. Po zbudowaniu kolejnej wersji systemu przychodzi czas na weryfikację poprawki. Obejmuje ona ponowne wykonanie kroków które spowodowały awarię systemu. Czasami, w ramach testów regresji, wykonywany jest cały zestaw powiązanych przypadków testowych.

 

Analiza, projektowanie i implementacja testów

Zwykle są to zadania bardziej doświadczonych testerów i obejmują między innymi analizę podstawy testów (w tym wymagań), określenie danych i środowiska testowego, a następnie specyfikację procedur i skryptów. I tutaj również możemy mieć do czynienia z testami manualnymi lub automatycznymi. W przypadku tych drugich należy pamiętać, że liczy się nie tyko poprawnie napisany kod. Nic nie zwalnia z obowiązku odpowiedniego zaprojektowania scenariusza testu. Dlatego solidne doświadczenie testerskie przydaje się również w czasie programowania testów.

 

Obowiązki z zakresu zapewnienia jakości oprogramowania (Quality Assurance)

Takiego rodzaju zadania z reguły dotyczą osób, które maja QA w nazwie czy opisie stanowiska – co powinno łączyć się z wiedzą i doświadczeniem pozwalającymi na kształtowanie i korektę procesu rozwoju oprogramowania. Jak można przeczytać w słowniczku Quality Assurance to część zarządzania jakością. W niektórych organizacjach osoby za to odpowiedzialne nie zajmują się w ogóle stricte testowaniem, jednak częściej łączy się zadania testera i QA.

 

Podsumowanie

To tylko niektóre z obowiązków testerów. Mam wrażenie, że zaledwie nakreśliłem temat. Ale taka też była rola tego wpisu. Zachęcam Cię do zgłębienia tematu i pytań w komentarzach, jeśli coś wymaga rozwinięcia lub szerszych wyjaśnień.

Pobierz bezpłatnego e-booka dla początkującego testera Tester oprogramowania - szkolenie online

4 myśli na temat “Co robi tester oprogramowania na co dzień?

  • 21 listopada 2016 o 17:26
    Permalink

    WItaj, mam pytanie, co polecisz dla osoby początkującej ?
    Chcę się przebranżowić, nie jestem po studiach technicznych.
    Mam wytyczne od znajomego czego się nauczyć ale to wszystko teoria…
    nie wiem jak naprawdę wygląda to testowanie od środka…

    polecisz jakieś filmiki, strony ?
    góry dzięki
    Iwo.

    • 22 listopada 2016 o 23:59
      Permalink

      Cześć,
      Jak widzę, znalazłaś sporo porad i linków na grupie Testowanie Oprogramowania na FB 🙂 Jeśli chodzi o moje rekomendacje – sukcesywnie zamieszczam je na blogu i zamierzam to kontynuować. Życzę Ci powodzenia w drodze do zawodu testerki!

  • 26 września 2017 o 22:38
    Permalink

    witam, stawiam pierwsze kroki w kierunku nowej branży. Mam nadzieje się w zawodzie testera z satysfakcja odnaleźć. Czy powinnam znać jakiś język programowania? Zauważyłam ze w ofertach pracy często pytają o sql. Miałam to jeszcze na studiach, czy warto wiedzę odświeżyć i uzupełnić? Pewnie sporo się zmieniło.

    Dzięki,

    • 28 września 2017 o 01:03
      Permalink

      Witaj Monika. SQL to język zapytań stosowany przy pracy z relacyjnymi bazami danych. Rzeczywiście, często jest wymieniany w ofertach, a jego znajomość jest sprawdzana na większości rozmów kwalifikacyjnych na stanowisko testera oprogramowania. Na szczęście opanowanie podstaw SQL nie powinno zająć dużo czasu i naprawdę warto to zrobić. Co do innych umiejętności – wkrótce ukaże się dodatek do bloga, gdzie podsumuję najważniejsze rzeczy, które należy poznać przed rozmową o pracę. O możliwości jego pobrania będę informował także poprzez newsletter i na Facebook’u.

Komentarze są wyłączone.