Testy obciążeniowe

Wzmożony ruch na stronie, jednoczesne pobieranie wielu danych z serwera, to tylko kilka przykładów zachowań, które mogą skutkować znacznym spowolnieniem działania serwisu lub aplikacji a nawet całkowitą ich awarią. W celu uniknięcia tego typu problemów i znalezienia ich ewentualnych przyczyn stosuje się testy obciążeniowe. Pozawalają one odpowiedzieć na pytania typu „Czy system wykonuje to, czego oczekuję w określonych warunkach?” oraz „Czy jego wydajność jest wystarczająco dobra?”

Testy obciążeniowe (ang. loading test) to działanie polegające na analizowaniu działania komputera, urządzenia peryferyjnego, serwera, sieci lub aplikacji, w celu zrozumienia ich zachowania pod określonym obciążeniem. Testy obciążeniowe przeprowadzane są zarówno w warunkach normalnych, jak również skrajnych. Umożliwiają one pomiar czasów odpowiedzi, przepustowości i poziomów wykorzystania zasobów a także identyfikację przyczyny niskiej wydajności lub awarii badanego elementu, przy założeniu, że występuje ona poniżej obciążenia szczytowego.

Przyczyny awarii mogą leżeć m.in. po stronie

  • serwerów aplikacji
  • serwerów bazy danych
  • sieci: opóźnienie, przeciążenie itp.
  • równoważenia obciążenia między wieloma serwerami

Testowanie obciążenia można przeprowadzić na dwa sposoby. Jednym z nich jest sprawdzenie w jaki sposób komponent radzi sobie z ciągłym i umiarkowanym obciążeniem przez długi okres. Istnieje również możliwość poddania systemu ciężkiemu obciążeniu pracą przez ograniczony czas. Każda z tych metod umożliwia określenie wąskich gardeł, błędów i ograniczeń występujących w działaniu badanego elementu.

Testowanie obciążenia dostarcza użytkownikowi ogólnych informacji o tym, ile aplikacji lub procesów może być uruchomionych jednocześnie, przy zachowaniu optymalnego poziomu wydajności.

PROCES PRZEPROWADZANIA TESTÓW OBEJMUJE:

  • Przygotowanie oprogramowania/infrastruktury, na których przeprowadzany jest test
  • Scenariusz testowy
  • Wykonanie testów oraz ich analizę
  • Raport testowy
  • Naprawę błędów

PRZYKŁADY TESTÓW OBCIĄŻENIA:

  • Pobieranie serii dużych plików z Internetu.
  • Równoczesne uruchamianie wielu aplikacji na komputerze lub serwerze
  • Testowanie serwera e-mail do obsługi ruchu pocztowego
  • Zapisywanie i odczytywanie danych z dysku twardego w sposób ciągły