pl

Testy wydajności

Dla osoby niezaznajomionej z zawiłościami procesu testowego oraz rodzajami i poziomami testowania, testy wydajności wydają się najłatwiejsze do zrozumienia. Każdemu z nas zapewne zdarzyło się, że strona nie chciała się załadować lub „zawiesiła się”. Czy to podczas zakupu biletu, zapisu na zajęcia czy w innych przypadkach, kiedy liczba użytkowników jest większa, niż się spodziewano. Dla korzystającego ze strony nie ma nic bardziej irytującego niż długo ładująca się zakładka - badania pokazują, że staliśmy się bardzo niecierpliwi pod tym kątem. Dodatkowo powolne przechodzenie między zakładkami i inne elementy wskazujące na niewystarczającą wydajność bardzo obniżają komfort korzystania z aplikacji. Z tego powodu firmy coraz częściej zamawiają testy wydajności. Jednak warto je przeprowadzić również z innych powodów – aby mieć świadomość, jaka liczba użytkowników czy działań na stronie jest maksymalna. Mimo, że wdrożenie i przeprowadzenie tego typu testów może być kosztowne, to dzięki nim możliwe jest takie zaplanowanie zmian w systemie, aby w ostatecznym rozrachunku było to dla firmy opłacalne.

Testy tego typu dostarczają również informacji na temat tego jak oprogramowanie reaguje w przypadku obciążenia. Informacje te są przydatne nie tylko na etapie wprowadzania produktu, ale również jakichkolwiek poprawek czy zmian w systemie. Jest to szczególnie istotne, kiedy system nie został stworzony przez nas, lecz przez firmę zewnętrzną, a również
w przypadku szczególnych wymagań, między innymi jeśli przetwarzamy dane wrażliwe. Dlatego – jako administrator – należy zastanowić się nad zainwestowaniem w testy wydajnościowe.

Głównym celem tych testów jest znalezienie defektów i tzw. "wąskich gardeł",
a następnie usunięcie ich. W tym celu tester powinien wykonać w aplikacji jak najwięcej działań, które zweryfikują takie cechy jak niezawodność, stabilność czy dostępność konkretnych obszarów. Przykładem takiego testu może być zmierzenie czasu odpowiedzi na dużą liczbę zapytań lub obserwacja, jak system zachowuje się w przypadku pracy z dużą ilością danych. Tego typu testy mają dać odpowiedź, jak wzrost liczby jednocześnie obsługiwanych użytkowników wpływa na czas przetwarzania żądania.

Najczęściej wykorzystywanym narzędziem do przeprowadzania tego typu testów jest JMeter. Jest to oprogramowanie typu open source, najczęściej używane do testów aplikacji webowych. Często zaznaczanym plusem jest wielość funkcji, co daje możliwość zrobienia wielu rzeczy przy pomocy jednego narzędzia. Innymi używanymi narzędziami są między innymi LoadUI, Gatling czy LoadRunner. Wybór narzędzia zależy między innymi od budżetu danego projektu, jak i od wykorzystywanych technologii.

Należy pamiętać, że funkcjonalność systemu to nie jedyna cecha jakości oprogramowania, którą należy testować. Ważne są również inne cechy oprogramowania w tym właśnie omawiana tu wydajność. Tego typu testy są zaliczane do grupy testów niefunkcjonalnych i wymagają od specjalistów konkretnych, technicznych umiejętności
i sporego doświadczenia. Nasi pracownicy mają wszystkie te cechy i dzięki temu znajdziecie testy wydajnościowe w naszej ofercie. 

pl