5 tricków, które pomogą Ci znaleźć błędy
Jak znajdować więcej bugów? Sprawdź 5 porad ułatwiających testowanie aplikacji webowych.
W niniejszym wpisie przygotowałem dla Was kilka wskazówek ułatwiających wyszukiwanie błędów - głównie w aplikacjach webowych, ale i dla innych rodzajów oprogramowania znajdziecie tu coś przydatnego. Oprócz konkretnych przypadków, na których warto skupić się podczas testów aplikacji webowych, czy konieczności używania DevToolsów, opisałem tu też najlepsze rozszerzenia Chrome dla testerów i ogólne porady zwiększające wiarygodność testowania.
Istotne elementy aplikacji webowych
Zaczynamy od często występujących elementów w aplikacjach webowych. Niezależnie od projektu, jest duża szansa, że traficie na różnego rodzaju formularze czy przyciski. I choć ich testowanie wydaje się dość oczywiste, warto zwrócić uwagę na kilka przypadków (pomijając oczywiście podstawowe przeznaczenie):
Text boxy (pola edycyjne) - przede wszystkim trzeba sprawdzić limity znaków. Czy pole ogranicza liczbę wprowadzanych znaków przez użytkownika? Polecam też sprawdzić możliwość wpisywania znaków specjalnych.
Pola numeryczne - czy można wpisać inne znaki niż cyfry? Czy można wpisać 0 (zero)? I czy 0 nie wywołuje błędów w obliczeniach w aplikacji?
Wysyłanie (uploadowanie) plików - warto sprawdzić skrajnie duże pliki i różne rozszerzenia.
Przyciski - czy spamowanie klikami w przycisk powoduje wielokrotne wysyłanie żądań do API? Przykładowo - czy masowe klikanie w przycisk Wyślij dane za każdym razem wysyła wprowadzony zestaw danych? Do weryfikacji tego przypadku trzeba zajrzeć do DevToolsów.
DevTools - źródło informacji
Skoro już wspomniałem o DevToolsach, płynnie przejdźmy do kolejnego punktu. Pokuszę się o stwierdzenie, że DevToolsy to najlepszy przyjaciel testera aplikacji webowych. Są to narzędzia deweloperskie (wbudowane w każdą popularną przeglądarkę) pozwalające na analizę budowy strony czy monitorowanie przebiegu komunikacji między klientem a serwerem.
Poniżej znajdziecie skróty klawiszowe umożliwiające otworzenie DevToolsów, ale równie dobrze możecie kliknąć w dowolnym miejscu na stronie prawym przyciskiem myszy i wybrać opcję Zbadaj.
Więcej tego typu obrazków znajdziesz na moim Instagramie.
No dobra, ale po co nam te DevToolsy? Pełnym możliwościom narzędzia przyjrzę się w osobnym wpisie na blogu, więc na ten moment podpowiem Wam, że podczas testowania aplikacji webowych warto stale zaglądać do zakładki Console oraz zakładki Network. Znajdziecie tam informacje o błędach aplikacji, a także ewentualne problemy w wysyłaniu żądań do API. Generalnie - widzisz coś na czerwono, to wiedz, że coś się dzieje 😅
Nagrywanie każdej sesji testów
Kolejną poradą jest nagrywanie każdej sesji testów. To jest trochę tak jak z robieniem backupów (kopii zapasowych) - nie myśli się o nich dopóki nie są potrzebne. A nagrania z testów są niezwykle przydatne podczas odtwarzania błędów. Niejednokrotnie wywołałem jakiegoś buga, a potem męczyłem się z odwozorowaniem kroków - w takich chwilach nagrania są bezcenne. Jak nagrywać? Przejdźmy do kolejnego punktu.
Najlepsze rozszerzenia Chrome dla testerów
Nie ma co ukrywać - Chrome jest obecnie najpopularniejszą przeglądarką, więc prawdopodobnie to właśnie na niej przeprowadzicie mnóstwo testów. Dlatego skupmy się na najlepszych rozszerzeniach Chrome'a dla testerów:
Screen Recorder - narzędzie do wspomnianego wcześniej nagrywania ekranu. Łatwe w obsłudze. Korzystam już kilka lat i nie spotkałem się z jakimikolwiek problemami.
Handy Screenshot - skoro jesteśmy już przy ekranie, to może jeszcze screenshoty? Jasne, można używać rozwiązań wbudowanych w system, ale to rozszerzenie (oprócz szybkiego robienia zrzutów ekranu) pozwala na prostą edycję screenshotów poprzez dodanie strzałek, napisów czy oznaczeń.
Bug Magnet - przechodzimy już do testerskich konkretów. To narzędzie pozwoli Wam w szybki sposób generować dane do formularzy - imiona, maile czy znaki specjalne.
Clear Cache - czyszczenie cache za pomocą jednego kliknięcia. Świeże środowisko (bez wpływu poprzednich działań) to podstawa wiarygodnego testowania.
Check My Links - jeden z moich ulubieńców. Po co samodzielnie klikać w każdy link skoro narzędzie zrobi to za nas i wygeneruje prosty raport o poprawności linków na wybranej stronie?
Exploratory Testing - wsparcie w testach eksploracyjnych. Tworzenie notatek i uwag, śledzenie odwiedzanych URL czy podsumowanie sesji testów.
Rozszerzenia do Chrome ułatwią Wam pracę i odciążą od niektórych monotonnych czynności (choćby ręcznego sprawdzania linków) - same plusy.
3 pytania przed testami
Dotarliśmy do końca, gdzie chciałbym przypomnieć o jednym z poprzednich wpisów - 3 kroki przed testami. Zdobycie odpowiedzi na 3 poniższe pytania jest podstawą przeprowadzania wiarygodnych testów.
Zacznim zaczniecie jakiekolwiek testy, zastanówcie się nad trzema kwestiami:
Co zmieniono w aplikacji?
Dlaczego wprowadzono zmiany?
Na co wpływają modyfikacje?
Przede wszystkim musicie dowiedzieć się, co zostało zmienione w aplikacji. Szczegółowa wiedza pozwoli Wam lepiej zrozumieć modyfikacje, a co za tym idzie - skuteczniej przeprowadzić testy. Równie ważna jest świadomość celu wprowadzania zmian. Oprogramowania raczej nie modyfikuje się bez powodu - za zmianami stoją realne problemy lub potrzeby użytkowników. A na końcu musicie się dowiedzieć, na co wpływają wprowadzane zmiany. Wyznaczcie elementy aplikacji, na które mogły wpłynąć modyfikacje i upewnijcie się, że działają one prawidłowo.
Porady dla testerów - podsumowanie
Ciężko wyróżnić uniwersalne porady sprawdzające się w każdej sytuacji. Podejście do testowania może znacząco różnić się w zależności od projektu - dlatego zachęcam Was do skupienia się na punkcie z trzema pytaniami przed testami. Mimo wszystko, mam nadzieję, że listy z istotnymi elementami aplikacji webowych czy rozszerzeniami do Chrome'a ułatwią Wam codzienna pracę (albo przygotowanie do niej). Po więcej wskazówek zapraszam też do działu Testowanie w praktyce.
Niedosyt możecie odczuć po przeczytaniu punktu o DevToolsach. Rozumiem to i wcale się nie dziwię. Temat ten jednak jest na tyle rozbudowany, że postanowiłem szerzej opisać go w osobnym wpisie. Na ten moment polecam Wam regularnie zaglądać do zakładek Console i Network - nawet jeśli nie jesteście zaznajomieni z DevToolsami, szybko zauważycie, gdy coś nie będzie działać prawidłowo (jak wspomniałem, podążajcie za kolorem czerwonym 😄)
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.
Sprawdź też:
Jeden tester w zespole - jak sobie poradzić?
Dziękuję, że czytasz mojego bloga!
Masz jakieś pytania? Z chęcią odpowiem :)