Jeden tester w zespole - jak sobie poradzić?
Czyli jak organizować pracę będąc jedynym testerem w zespole.
Przez długi czas pracowałem jako jedyny tester w zespole - doskonale wiem, że jest to wymagające zadanie. Co więcej, byłem całkowicie pierwszym testerem w projekcie, więc nie miałem nawet do dyspozycji notatek poprzednika czy jakiejkolwiek dokumentacji testerskiej. Nie jest to proste, ale w pojedynkę też da się stworzyć porządny proces utrzymania jakości. Choć, oczywiście, zawsze brakuje tej dodatkowej osoby, która mogłaby spojrzeć na oprogramowanie z innej perspektywy czy przejąć część obowiązków.
Jeśli jesteś w takiej sytuacji (a jest to możliwe skoro czytasz ten wpis 😄), nie ma co się załamywać - trzeba działać. Mam nadzieję, że poniższe punkty pomogą Ci w ogarnięciu chaosu i natłoku zadań.
Twórz własną dokumentację
Bez przynajmniej podstawowej dokumentacji szybko pogubisz się w projekcie - zaczniesz pomijać pewne przypadki testowe, co może doprowadzić do niewykrycia potencjalnych błędów. Zdaję sobie sprawę, że w niektórych firmach dokumentacja po prostu nie istnieje, ale to nie znaczy, że nie możesz tworzyć własnej. Zapisuj wszystko, co przyjdzie Ci do głowy - najważniejsze przypadki testowe czy obszary aplikacji narażone na błędy. Dokument wcale nie musi być w oficjalnej formie, bo przecież będzie on tylko dla Ciebie. Tego typu notatki pomogą Ci w przeprowadzaniu testów regresji czy odtwarzaniu błędów. Serio, nie ma co polegać w 100% na własnej pamięci - istotne informacje muszą być gdzieś zapisane.
Temat braku dokumentacji poruszyłem też w osobnym wpisie, więc polecam tam zajrzeć - Brak dokumentacji - co robić?.
Zrozumienie produktu = łatwiejsze wykrywanie błędów
Na blogu niejednokrotnie wspominałem o wiedzy domenowej i konieczności rozumienia biznesowego sensu testowanej aplikacji. Nie da się poprawnie przetestować oprogramowania, jeśli nie wiemy do czego ono służy. I to zjawisko nasila się będąc samotnym wilkiem testowania, bo czas na przetestowanie danej funkcjonalności musisz wykorzystać maksymalnie produktywnie.
Staraj się stale rozszerzać swoją wiedzę domenową. Wciel się w rolę klienta i postaraj się zrozumieć jego potrzeby. Zapytaj Project Managera (czy inną osobę odpowiedzialną za projekt) o główne problemy użytkowników. To pozwoli Ci na szybsze i bardziej efektywne testowanie.
Ustal priorytety - nie da się wszystkiego przetestować
Jeśli znasz 7 zasad testowania, to doskonale wiesz, że nie da się wszystkiego przetestować. A będąc jedynym testerem w zespole, musisz potraktować tę zasadę szczególnie poważnie. Głównie chodzi tu o testy regresji - prawdopodobnie nie będziesz miała / miał czasu na idealną regresję. Trudno, jakoś trzeba to przeżyć.
Musisz skupić się na najważniejszych i najbardziej wrażliwych obszarach oprogramowania. Jeśli czas goni, nie sprawdzaj każdej możliwej kombinacji. Zamiast tego poświęć uwagę na krytyczne funkcjonalności, które po prostu muszą działać, bo bez nich klient się nie obejdzie. W tej chwili to jest najważniejsze, a nie kolejny wymyślny przypadek testowy.
A może trochę testów automatycznych?
Jeśli masz możliwość (to znaczy, jeśli umiejętności i firma Ci to umożliwiają), staraj się tworzyć choć trochę testów automatycznych. Nie muszą być one pisane na bieżąco. Ważne, by w wolnych chwilach pokrywać najważniejsze przypadki testowe. Uzyskanie sensownego zestawu testów pewnie trochę zajmie, ale w przyszłości odwdzięczy się sprawniejszymi testami regresji i większym poczuciem bezpieczeństwa w trakcie wdrożeń na produkcję.
Nie wiesz jak coś przetestować? Szukaj pomocy!
Wiem, że nie masz pod ręką drugiego testera, ale źródeł pomocy warto szukać też gdzieś indziej. Przede wszystkim użyj mocy Internetu. Chociaż nie wiem czy powinienem to pisać, bo właśnie czytasz moje porady, więc doskonale wiesz, że w sieci możesz znaleźć mnóstwo rozwiązań 😅 W każdym razie - pamiętaj, że w sytuacji zwątpienia sporo wiedzy znajdziesz w Internecie (a jeśli chcesz otrzymywać cotygodniową dawkę wiedzy o testowaniu, zapisz się do mojego newslettera).
Co więcej, nie tylko drugi tester może coś podpowiedzieć w kwestii utrzymania jakości - masz przecież do dyspozycji innych członków zespołu. Jak już wspominałem w osobnym wpisie - nie bój się pytać. Programiści nie gryzą i naprawdę mogą Ci pomóc w analizie przypadków czy nawet samym testowaniu.
Cały zespół odpowiada za jakość
To oczywiście łączy się z poprzednim punktem, ale chciałbym podkreślić - ważna jest świadomość, że za jakość odpowiada cały zespół, a nie tylko Ty. Tworzenie oprogramowania jest skomplikowanym procesem, gdzie każdy etap (zaczynając od fazy koncepcji i projektowania, aż po programowanie i testowanie) wpływa na finalną jakość produktu.
Jasne, Twoim zadaniem jest wykrywanie błędów, ale testowanie jest jednym z końcowych elementów utrzymania jakości. Wymagania powinny być spójne z potrzebami klienta, a kod możliwie wolny od błędów. Daj z siebie wszystko, ale pamiętaj, że nie jesteś jedyną osobą odpowiedzialną za jakość oprogramowania.
Praca jako jeden tester w zespole - podsumowanie
I to by było na tyle. Na koniec zostawiam Cię z krótką listą podsumowującą porady, jak przetrwać pracując jako jeden tester w zespole:
Twórz własną dokumentację - zapisuj najważniejsze informacje o projekcie.
Stale rozszerzaj wiedzę domenową.
Ustalaj priorytety; pamiętaj, że nie da się wszystkiego przetestować i czasem trzeba skupić się na ryzykownych obszarach aplikacji.
Jeśli masz taką możliwość, postaraj się napisać testy automatyczne do najważniejszych przypadków.
Za jakość oprogramowania odpowiada cały zespół; nie bój się prosić o pomoc.
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.
Dziękuję, że czytasz mojego bloga!
Masz jakieś pytania? Z chęcią odpowiem :)