Testy wydajnościowe aplikacji webowej

5 Lip

Z ciekawości (i trochę z nudów) postanowiłem że warto przetestować jak bardzo mój blog jest wydajny w obliczu dużego ruchu użytkowników. Co prawda daleko jeszcze by mówić o jakimkolwiek obciążeniu 😉 ale okazało się, że usługa Azure Web App z której korzysta Chmuroman posiada wbudowane narzędzie do testowania obciążeń.

Żeby skonfigurować test należy wejść w kartę aplikacji, którą będziemy testować, wybrać Tools i następnie Performance test.

perf-test

Jeśli nie mamy konta VSTS to możemy kliknąć New i utworzyć scenariusz testowy na potrzeby którego zostanie automatycznie utworzone konto VSTS z losowo wygenerowaną nazwą. Ewentualnie można wybrać Set Account i samemu utworzyć konto.

Tworząc test podajemy takie informacje jak liczba wirtualnych użytkowników użytych do testowania, czas trwania testu oraz skąd ma być generowany ruch. Co ciekawe domyślnie testowana będzie strona z której wywołaliśmy Performance test, ale można wpisać adres jakiejkolwiek witryny dostępnej w Internecie.

Jak już załatwimy wszystkie ustawienia to wystarczy kliknąć przycisk Run test, po czym po chwili test zostanie uruchomiony i w czasie rzeczywistym możemy oglądać statystyki wydajnościowe testowanej witryny.

perf-test-new

W moim przypadku przy wykorzystaniu jednego z tańszych planów hostingowych Azure, faktycznie witryna się mocno zamuliła co widać na wykresach poniżej. Co ciekawe jeśli chodzi o bazę danych to widać znaczny wzrost jej utylizacji ale nie osiągnęła swego limitu.

perf-test-details

perf-test-chmuromandb

W momencie pisania tego wpisu cała wyżej opisana procedura jest darmowa jeśli mamy wykupiony dowolny plan hostingowy Azure Web App. Jedynym ograniczeniem są jednostki virtual user minutes dostępne w ramach konta VSTS. Ilość zużytych jednostek wylicza się: czas trwania testu X ilość wirtualnych użytkowników. Darmowo dostępnych jest jednak 20000/miesiąc więc do prostych testów wydajnościowych spokojnie wystarczą. Aktualny stan wykorzystania zasobów VSTS możemy podejrzeć w portalu Azure przechodząc do usługi Team Services accounts.

1 Reply to “Testy wydajnościowe aplikacji webowej

  1. Fajnie, że poruszyłeś ten temat. Wydajność serwisów jest często pomijana w testach, a uważam, że jest to jedna z ważniejszych cech stron i aplikacji internetowych, które powinno się badać. Każda sekunda oczekiwania dłużej na załadowanie strony (w szczególności w branży e-commerce) to duży spadek konwersji.

Dodaj komentarz