Uruchamiasz sklep internetowy. Mały, duży. Chcesz, aby kupujący sprawnie przechodzili przez kolejne etapy lejka sprzedażowego nie denerwując się na czas oczekiwania, aż załaduje się Twoja aplikacja. A może chcesz zwiększyć możliwości platformy, którą już zarządzasz, bo nadchodzą Święta czy Black Week? Twój serwis się “zapycha”?

Na co zwrócić uwagę? Czy testy wydajności są potrzebne? A może stress testy?

Coraz częściej firmy wchodzące na rynek, ale również istniejące blisko 30 lat- zwracają się do nas o wykonanie testów wydajności ich serwisów. Najczęściej tuż przed gorącymi dla nich okresami (np. premiera produktu czy okres świąteczny). Co znamienne, wiedzą że istnieje ryzyko przy wykorzystaniu kanału online. Potencjalny kupujący może zrazić się do ich platformy z powodu zbyt długiego oczekiwania na ładowanie się komponentów aplikacji.

Czy wiesz ile i po co?

Na wstępie ważne jest oszacowania liczby potencjalnych odwiedzających. Na tej podstawie jesteśmy w stanie pokazać jak zachowa się serwis pod obciążeniem użytkowników:

  • jak szybko będzie odpowiadał na akcje użytkowników,
  • jak szybko będą się wczytywały poszczególne elementy aplikacji,
  • pod jakim obciążeniem liczby użytkowników przestanie odpowiadać.

Ale ilości i liczby dostarcza Klient, gdyż tylko on zna swoją strategię biznesową i jest w stanie ją oszacować.

Wąskie gardła

Istotne są punkty, w których serwis może się przytkać. Takie wąskie gardła to strony, które mogą być podłączone do baz danych (np. generowanie obrazków, cen) lub po prostu mogą mieć mało optymalny kod czy strukturę.

Wąskim gardłem może być też infrastruktura, na której taka platforma jest postawiona. Dzięki naszej usłudze, Klient dowie się, jak bardzo powinien móc ją skalować i na jakie koszty może być nastawiony.

Możemy i zazwyczaj wykonujemy 2 rodzaje testów.

Load Test, czyli symulowanie dużej ilości użytkowników w długim czasie.  Sprawdza zachowania serwisu w czasie dłuższego zwiększonego ruchu (np. okolice świąt czy w przypadku systemów biletowych – w okolicy wydarzeń sportowych).

Stress Test – symulujący dużą liczbę użytkowników w krótkim czasie. Może pokazać czy i kiedy infrastruktura się przeciąży i czy działanie systemu podczas trwania testu wewnętrznie jest poprawne i nie powoduje innych zakłóceń, niż dłuższe czasy oczekiwania.

Swoistym rodzajem Stress Testów  są dedykowane ataki DDoS (distrubited denial of service). Wykonujemy je, aby sprawdzić jak będzie funkcjonowała infrastruktura przy milionowych ilościach zapytań do serwisu o bardzo, bardzo krótkim czasie.

Co chcesz sprawdzić?

Powinniśmy sobie w tym momencie odpowiedzieć na pytanie jaki jest cel testów.

  • Sprawdzenie optymalizacji kodu serwisu?
  • Infrastruktury na której stoi?
  • Czasy odpowiedzi?
  • Maksymalny możliwy ruch, który pozwala na korzystanie z serwisu?
  • Jak długo serwis będzie się stabilizował po bardzo dużym obciążeniu?

Jeśli przeszedłeś przez powyższe punkty, to teraz wkraczamy MY i zaczynamy od spotkania z Tobą i posłuchania na czym Ci zależy. W raporcie ważne są dla Ciebie czasy odpowiedzi z serwera? Czy może sprawdzenie czy wszystkie obrazki się ładują?

Po takim spotkaniu, na którym omawiamy 3-6 najczęstszych scenariuszy zakupowych przystępujemy do działania i będąc w ciągłym kontakcie wykonujemy żądane testy. Zazwyczaj wykonanie jednego scenariusza testowego wraz z raportem z testów to około 3-4 dni. Czas zależy od jego skomplikowania, długości oraz szczegółów technicznych.

Nasz raport z testów może zawierać:

  • statystyki zapytań,

  • dane dotyczące czasu odpowiedzi,

  • statystyki awarii,

  • liczby użytkowników,

  • szczegółowe statystyki wyjątków.

Oprócz szczegółowego raportu w tabeli będzie on miał również wykresy graficzne. One pokażą Ci, w którym momencie następują korelacje między np. liczbami użytkowników a czasami odpowiedzi serwera.

Raport omawiamy z Klientem podczas spotkania, a jeśli ma podwykonawcę serwisu to również z nim. Ważnym jest, aby wyniki raportu były rozumiane przez  Klienta nie tylko od strony technicznej, ale również biznesowej.