Rozwiązania IT

Testy wydajnościowe aplikacji

Sprawdź wydajność
Twojej aplikacji


Prowadzisz swoją działalność w oparciu o serwis internetowy, a od poprawności jego działania zależą przychody Twojej firmy? Zastanawiasz się nad inwestycją w sprzęt? A może Twoje aplikacje wymagają przepisania? Jeśli zależy Ci na tym, aby utrzymać ciągłość biznesową i nie tracić klientów, powinieneś zbadać wydajność swojej aplikacji. Może się okazać, że konieczne będzie dostrojenie parametrów systemu lub optymalizacja kodu.

  • Testy wydajnościowe składają się z kilku etapów, obejmujących przygotowanie scenariusza i konfigurację środowiska testowego. Kluczowym etapem są testy iteracyjne, pozwalające zidentyfikować wąskie gardła systemu.
  • Na podstawie scenariuszy możliwych zdarzeń, generujemy założone obciążenie serwisu, stopniowo zwiększając ruch na stronie, a także wolumetrię przechowywanych danych. Na bieżąco otrzymujesz wyniki pomiarów, ocenę wyników, a także wskazanie nieprawidłowości, które pozwalają Ci reagować w czasie rzeczywistym i odpowiednio modyfikować system.
  • Po zakończeniu testów otrzymasz szczegółowy raport, dzięki czemu będziesz mógł odpowiednio modyfikować parametry systemu i poprawić wydajność aplikacji. Korzyści dla Twojej firmy są oczywiste – działanie bez przestojów i niezadowolonych użytkowników.

Przebieg procesu


Na czym polegają testy wydajnościowe


Etap I Potrzeba biznesowa

Proces testowania serwisu zaczyna się od spotkań roboczych, podczas których wspólnie z Tobą określamy wymagania i oczekiwane rezultaty całego przedsięwzięcia, formułujemy opis wymagań wydajnościowych i wolumetrię systemu. Następnie opracowujemy scenariusze testowe i odpowiednio konfigurujemy środowisko do ich przeprowadzania.

Etap II Symulacja

Jest to moment, w którym uruchamiamy pierwsze testy nieformalne. Uzyskane wyniki pozwalają na zweryfikowanie przygotowanych scenariuszy i parametrów środowiska, a następnie, jeśli zachodzi taka potrzeba, wprowadzenie odpowiednich modyfikacji.

Etap III Testy Iteracyjnie

Po rozpoczęciu testu stopniowo zwiększane jest obciążenie, aż do osiągnięcia wartości zadanej lub awarii systemu. Podczas testu, każdy serwer symuluje pracę setek lub nawet tysięcy „wirtualnych użytkowników” systemu. Każdą iterację kończymy raportem z testów.

Testowanie w praktyce, czyli co możesz zbadać?

Testy mogą składać się z wielu osobnych pomiarów wykonywanych
w celu sprawdzenia różnych elementów wydajności systemu.

Między innymi możemy wykonać następujące rodzaje testów:

Testy wydajnościowe

(ang. performance tests)

generowane jest założone obciążenie systemu i sprawdzane, czy system spełnia wymagania RPS, czasów odpowiedzi, liczby równoległych użytkowników, a jednocześnie czy poziom błędów jest odpowiednio niski.

Testy przeciążeniowe

(ang. stress tests)

kontynuowane są testy wydajnościowe, ale stopniowo zwiększane jest obciążenie, w celu zidentyfikowania limitów systemu i punktów krytycznych.


Testy obciążeniowe

(ang. load/endurance tests)

zidentyfikowany zostaje poziom obciążenia systemu powyżej jego wymagań, ale przy którym wciąż zachowuje się poprawnie (tj. akceptowalne czasy odpowiedzi i poziom błędów), a następnie poddajemy go takiemu obciążeniu przez długi okres czasu (np. 8h, 24h itp.).


Testy skalowalności

(ang. scalability tests)

testy sprawdzające możliwości skalowania środowiska powtarzane dla różnych konfiguracji (więcej CPU, więcej RAM, więcej serwerów aplikacyjnych, więcej instancji bazy danych, użycie szybszych macierzy dyskowych itp.)


Testy pojemnościowe

(ang. capacity tests)

weryfikacja jak system zachowa się, kiedy zwiększy się rozmiar przechowywanych danych (np. baza danych, ElasticSearch, logi, liczba użytkowników, katalog ldap itp.).

Korzyści

Jakie są spodziewane efekty dla Twojej firmy?


  • Sprawdzisz, czy aplikacja działa prawidłowo pod dużym obciążeniem, które dla Ciebie wygenerujemy.

  • Otrzymasz odpowiedź, czy system obsłuży nagły i nieregularny ruch użytkowników.

  • Dowiesz się, jaki będzie czas oczekiwania na odpowiedź przy nagłym wzroście obciążenia serwisu.

  • Poznasz nieprawidłowości w systemie, które mogą skutkować utratą danych.

  • Zlokalizujesz limity i wąskie gardła, obniżające wydajność Twojego systemu.

  • Uzyskasz wyniki z każdego etapu przeprowadzonych testów, będziesz mógł na bieżąco modyfikować i poprawiać środowisko.

Strona wykorzystuje pliki Cookies

Ta strona korzysta z ciasteczek aby świadczyć usługi na najwyższym poziomie. Dalsze korzystanie ze strony oznacza, że zgadzasz się na ich użycie.