Dobrym pomysłem jest poznanie narzędzi najczęściej używanych przez junior testerów. Oczywiście, rodzaj oprogramowania wykorzystywanego w codziennej pracy testera w dużej mierze zależy od organizacji. Czasem wybór niektórych programów wynika z indywidualnych preferencji osób z nich korzystających lub potrzeb zespołu.
Warto znać kategorie narzędzi używanych w projektach, rozpoznawał ich najpopularniejszych przedstawicieli, a nawet zapoznać się z ich funkcjonowaniem, jeśli istnieje taka możliwość. W Twojej przyszłej karierze w branży IT, ważna będzie elastyczność i gotowość do nauki.
Narzędzia testera do zarządzania projektami
Jednym z rodzajów narzędzi, z których prawdopodobnie będziesz korzystał(a) najczęściej, są narzędzia do zarządzania projektami. W codziennej pracy zespołu takie aplikacje odgrywają kluczową rolę w organizacji, śledzeniu postępu, zarządzaniu zadaniami i błędami oraz generowaniu raportów.
Wśród narzędzi do zarządzania projektami w IT prym wiedzie Jira. Jej integracja z innymi programami, łatwość personalizacji oraz wsparcie społeczności to główne czynniki przyczyniające się do jej dużej popularności. Możesz zapoznać się z tym środowiskiem już teraz korzystając z jego darmowej wersji.
Inne narzędzia tego typu to np. Azure DevOps, HP Quality Center/ALM, Asana, ClickUp czy Trello.
Narzędzia do zarządzania testami
Kolejnym rodzajem narzędzi, które warto poznać będąc testerem bądź testerką oprogramowania, są narzędzia do zarządzania testami. Takie aplikacje pozwalają na efektywne zarządzanie przypadkami testowymi, defektami, śledzenie postępu testów oraz generowanie raportów.
Tutaj również zastosowanie znajduje Jira wraz z jej dodatkami, takimi jak XRay czy Zephyr. Innym popularnym narzędziem jest TestRail, który umożliwia organizowanie i śledzenie przypadków testowych, planowanie cykli testowych, zarządzanie zestawami testowymi oraz raportowanie wyników i defektów.
Alternatywą dla Jira jest stworzony przez Microsoft zestaw narzędzi Azure DevOps, który również posiada moduł do planowania testów i zarządzania nimi.
Oprócz nich, często wykorzystywanymi aplikacjami w tej kategorii są TestLink i qTest.
Narzędzia do testowania kompatybilności i responsywności
Kolejnym istotnym obszarem dla testerów oprogramowania jest testowanie kompatybilności i responsywności aplikacji webowych i mobilnych. Narzędzia temu służące umożliwiają testerom przetestowanie aplikacji na różnych przeglądarkach, systemach operacyjnych i urządzeniach. Oferują one zwykle dostęp do wirtualnych maszyn oraz rzeczywistych urządzeń mobilnych, które można zdalnie kontrolować i testować aplikacje w różnych scenariuszach. Najpopularniejszym narzędziem w tej kategorii jest BrowserStack, a inne przykłady podobnych programów to LambdaTest czy Sauce Labs.
Narzędzia do testowania API
Innym przydatnym rodzajem narzędzi są narzędzia do testowania interfejsów programistycznych (API).
Interfejsy programistyczne służą do komunikacji między różnymi komponentami oprogramowania, umożliwiając wymianę danych i wykonanie operacji.
Najpopularniejszym narzędziem w tej kategorii jest pewnie znany Ci już Postman. Jest to aplikacja, która umożliwia wysyłanie żądań HTTP do API, testowanie odpowiedzi i weryfikację ich zgodności z oczekiwaniami. Postman oferuje również funkcje automatyzacji, generowania skryptów testowych i monitorowania API. Do testowania usług sieciowych opartych na protokole SOAP często używa się narzędzia SoapUI.
Narzędzia deweloperskie (DevTools)
DevTools są zestawem wbudowanych narzędzi dostępnych w przeglądarkach internetowych. Służą one zarówno deweloperom, jak i testerom do analizowania, debugowania i profilowania stron internetowych oraz aplikacji webowych.
Kiedy strona nie działa prawidłowo, DevTools jest miejscem, gdzie tester zaczyna swoje śledztwo. Może tam zdiagnozować powody występujących awarii, sprawdzić budowę strony, jej komunikację z serwerem czy przeanalizować błędy na froncie, które pojawiają się w konsoli.
Aby otworzyć DevTools w Windowsie i Linuksie, użyj w przeglądarce skrótu klawiszowego "Ctrl+Shift+I", w przypadku MacOS - “Option+Cmd+I”.
Warto wspomnieć o narzędziach do do analizy aplikacji desktopowych. W Windowsie, w pakiecie narzędzi Windows SDK jest dostępny Inspect (inspect.exe). Program ten jest wyjątkowo przydatny w automatyzacji testów, choć stanowczo zbyt rzadko się o tym mówi.
Narzędzia do kontroli wersji
Narzędzia do kontroli wersji są niezwykle ważne dla zarządzania kodem źródłowym i śledzenia zmian w projekcie. Choć generalnie są one głównie używane przez programistów, niekiedy również testerzy mają do nich dostęp i mogą śledzić zmiany w kodzie. Dzięki temu mogą zobaczyć, jakie modyfikacje zostały wprowadzone w projekcie i jak wpływają one na testowane funkcje. Najpopularniejszymi przedstawicielami tej kategorii narzędzi są Git i SVN.
Narzędzia do zarządzania bazą danych
Testowanie funkcji bazy danych, takich jak tworzenie, modyfikacja i usuwanie rekordów, oraz weryfikacja poprawności danych będzie twoim częstym zadaniem. W tym celu przydatne okazują się narzędzia takie jak SQL Server Management Studio, Azure Data Studio, Oracle SQL Developer czy MySQL Workbench. Dzięki nim testerzy mogą tworzyć zapytania do bazy danych i przeprowadzać wymagane testy.
Narzędzia CI/CD
Choć testerzy manualni często nie są zaangażowani w samą konfigurację i utrzymanie narzędzi CI/CD, nadal mogą z nich korzystać w swojej pracy. Narzędzia CI/CD (continuous integration/continuous delivery) umożliwiają automatyczne wdrażanie nowych wersji oprogramowania na środowiska testowe lub produkcyjne. Dzięki temu testerzy mogą szybko uzyskać dostęp do najnowszych wersji i rozpocząć testowanie. Najczęściej używane narzędzia tego typu to Jenkins, GitLab CI/CD, Bamboo oraz Azure DevOps.
Narzędzia do analizy logów
Czasami częścią pracy testera oprogramowania jest przeglądanie logów. Pozwala to na analizowanie informacji diagnostycznych, śledzenie zdarzeń oraz identyfikowanie błędów w aplikacji.
Oto kilka przykładów narzędzi używanych w tym celu: Splunk, Middleware, ELK Stack, GrayLog oraz Loggly. Z ich pomocą testerzy mogą dokładnie monitorować i analizować logi aplikacji w celu znalezienia potencjalnych problemów.
Narzędzia do rejestrowania bugów
Gdy trafisz na błąd w aplikacji, warto go zarejestrować, aby podzielić się nim z zespołem lub dodać go do systemu zarządzania projektami. W tym przypadku niezbędne okażą się narzędzia do rejestrowania i edycji obrazów oraz wideo.
Wybór programów w tej kategorii jest duży, więc z pewnością znajdziesz coś odpowiedniego dla siebie. Przykładowe programy używane w tym celu to: Greenshot, Sharex, Lightshot do zrzutów ekranowych oraz ScreentoGif, Screencastify (wtyczka) jako narzędzia do nagrywania wideo.
Przydatne rozszerzenia do przeglądarki
W codziennej pracy testera oprogramowania mogą przydać się dodatkowe narzędzia przyspieszające i ułatwiające pracę.
Ciekawym przykładem jest wtyczka Bug Magnet, która ułatwia testowanie formularzy poprzez możliwość przetestowania różnych niestandardowych danych, takich jak imiona, adresy, emaile, numery i wiele innych.
Innym pomocnym rozwiązaniem jest wtyczka Fake Filler, która pozwala zaoszczędzić czas na wpisywanie testowych danych do formularzy, automatycznie wypełniając pola jednym kliknięciem.
Page Ruler to narzędzie, które służy do odmierzania długości na stronie, co może być przydatne podczas analizowania i weryfikowania układu elementów. Z kolei Wappalyzer to narzędzie, które identyfikuje technologie używane na stronach internetowych, takie jak systemy zarządzania treścią, platformy e-commerce, frameworki sieciowe, oprogramowanie serwerowe czy narzędzia analityczne.
… jeśli jeszcze mało Ci narzędzi
Do tworzenia testów wydajnościowych API używać będziesz JMeter albo Locust.
Do testowania zabezpieczeń - OWASP ZAP.
Ponadto istnieją narzędzia do analizy kodu i modułów 3rd party pod względem praw autorskich, oraz tzw. sniffery, służące do podglądania ruchu w sieci, pomocne przy debugowaniu zapytań i odpowiedzi z API: Wireshark lub Fiddler. Ten ostatni może być też bramką proxy dla aplikacji.
Do debugowania zapytań z aplikacji mobilnych, używa się natomiast Charles Proxy.
Testy wysyłania maili przeprowadzisz z kolei dzięki serwisom z tymczasowymi kontami, np. 10minutemail.
Narzędzia pracy junior testera - podsumowanie
Jeśli ta lista wydaje Ci się przytłaczająca, nie martw się! Pracując w projekcie, bardzo szybko nauczysz się korzystać z niezbędnych narzędzi - wszak praktyka czyni mistrza! Pamiętaj, że możesz liczyć na pomoc bardziej doświadczonych kolegów i koleżanek z projektu. Eksperymentuj, ucz się i dostosuj narzędzia do swoich potrzeb.
Jeśli zaciekawił Cię ten artykuł, zachęcamy do zapoznania się z ostatnim blogiem na temat testowania aplikacji na różnych platformach i urządzenia.
Powodzenia!