Różnica między testowaniem obciążenia a testowaniem wydajności

Testowanie obciążenia a testowanie wydajności

Testy wydajności i testowania obciążenia to dwa terminy, które są często używane zamiennie, mimo że są zupełnie różne. W rzeczywistości testowanie obciążenia jest tylko jedną częścią testowania wydajności. Jest to zatem rodzaj testu wydajności, który koncentruje się na określonej części.

Testy obciążenia i wydajności są często stosowane w inżynierii oprogramowania w celu uzyskania realistycznego obrazu wydajności oprogramowania. Jeśli wydajność jest poniżej akceptowalnego poziomu, należy wprowadzić poprawki lub ulepszenia. Obszary, które należy dostosować, można również odkryć podczas testów obciążenia i wydajności.

Testy wydajności umieszczają oprogramowanie w scenariuszu, który replikuje ostateczne środowisko użytkowania oprogramowania. Następnie analizowane są wszystkie możliwe rzeczy, które mogą się zdarzyć, aby dowiedzieć się, czy oprogramowanie działa tak, jak powinno lub czy występuje nieprzewidziany błąd, który może powodować nieprawidłowe zachowanie.

Ważną częścią testów wydajnościowych jest testowanie obciążenia. Jest to scenariusz, w którym oprogramowanie jest symulowane przy różnych poziomach obciążenia; lekkie obciążenie, umiarkowane obciążenie, duże obciążenie i wszystko pomiędzy. Ma to na celu sprawdzenie, na jakim poziomie wydajność oprogramowania zacznie się znacznie obniżać. Ładowanie może obejmować dowolną liczbę jednoczesnie podłączonych użytkowników lub przetwarzanie intensywnych zadań. Dzięki testom obciążenia programiści mogą dowiedzieć się, które obszary oprogramowania powodują wąskie gardła powodujące spadek wydajności. Jest to również świetne narzędzie do ustalania realistycznego limitu obciążenia, które system może wytrzymać. Deweloperzy mogą następnie stworzyć mechanizmy, które to uniemożliwiają. Przykładami takich mechanizmów mogą być kolejkowanie użytkowników lub zadań, aby oprogramowanie otrzymywało tylko to, co może zarządzać.

Oprócz testowania obciążenia istnieją również inne aspekty testowania wydajności. Wszystkie metodologie testowania są zaprojektowane dla konkretnego scenariusza, typowego lub nadzwyczajnego, który może się zdarzyć w testowanym oprogramowaniu. Ważne jest również przeprowadzenie testów, czy oprogramowanie jest w stanie odzyskać system po awarii, nawet jeśli nie jest to bardzo prawdopodobne; tym bardziej w przypadku dużych wdrożeń, w których zasoby znajdują się na zdalnych serwerach.

Streszczenie:

1. Testowanie obciążenia jest częścią testowania wydajności.
2. Testowanie wydajności ma na celu poprawę ogólnej wydajności poprzez znajdowanie błędów i wąskich gardeł.
3.Testowanie obciążenia koncentruje się na reakcji systemu na bardzo duże obciążenia.