Co to jest test stresowy w testowaniu oprogramowania?
Testy warunkรณw skrajnych
Testy warunkรณw skrajnych jest rodzajem testowania oprogramowania, ktรณry weryfikuje stabilnoลฤ i niezawodnoลฤ aplikacji oprogramowania. Celem testรณw obciฤ ลผeniowych jest zmierzenie oprogramowania pod kฤ tem jego wytrzymaลoลci i moลผliwoลci obsลugi bลฤdรณw w warunkach ekstremalnie duลผego obciฤ ลผenia i upewnienie siฤ, ลผe oprogramowanie nie ulegnie awarii w sytuacjach kryzysowych. Testuje nawet poza normalnymi punktami operacyjnymi i ocenia, jak oprogramowanie dziaลa w ekstremalnych warunkach.
W inลผynierii oprogramowania testowanie warunkรณw skrajnych jest rรณwnieลผ znane jako Testy wytrzymaลoลciowe. W ramach testรณw obciฤ ลผeniowych AUT jest poddawany obciฤ ลผeniom przez krรณtki czas, aby poznaฤ jego wytrzymaลoลฤ. Najbardziej znane zastosowanie testรณw warunkรณw skrajnych polega na okreลleniu limitu, przy ktรณrym system, oprogramowanie lub sprzฤt ulega uszkodzeniu. Sprawdza takลผe, czy system wykazuje skuteczne zarzฤ dzanie bลฤdami w ekstremalnych warunkach.
Testowana aplikacja zostanie obciฤ ลผona po skopiowaniu ze strony internetowej 5 GB danych i wklejeniu ich do notatnika. Notatnik jest obciฤ ลผony i wyลwietla komunikat o bลฤdzie โBrak odpowiedziโ.
Potrzeba testรณw obciฤ ลผeniowych
Rozwaลผmy nastฤpujฤ ce przykลady w czasie rzeczywistym, w ktรณrych moลผemy odkryฤ zastosowanie testรณw obciฤ ลผeniowych:
- W okresie festiwalu witryna zakupรณw online moลผe odnotowaฤ gwaลtowny wzrost ruchu lub ogลosiฤ wyprzedaลผ.
- Kiedy w wiodฤ cej gazecie pojawia siฤ wzmianka o blogu, nastฤpuje nagลy wzrost ruchu.
Konieczne jest przeprowadzenie testรณw warunkรณw skrajnych, aby uwzglฤdniฤ takie nietypowe skoki ruchu. Niezastosowanie siฤ do tego nagลego ruchu moลผe skutkowaฤ utratฤ przychodรณw i reputacji.
Testy wytrzymaลoลciowe sฤ rรณwnieลผ niezwykle cenne z nastฤpujฤ cych powodรณw:
- Aby sprawdziฤ, czy system dziaลa w nietypowych warunkach.
- Wyลwietlanie odpowiedniego komunikatu o bลฤdzie, gdy system jest pod obciฤ ลผeniem.
- Awaria systemu w ekstremalnych warunkach moลผe spowodowaฤ ogromnฤ utratฤ przychodรณw
- Lepiej przygotowaฤ siฤ na ekstremalne warunki, przeprowadzajฤ c testy warunkรณw skrajnych.
Cele testรณw warunkรณw skrajnych
Celem testรณw warunkรณw skrajnych jest analiza zachowania systemu po awarii. Aby test warunkรณw skrajnych zakoลczyล siฤ sukcesem, system powinien wyลwietliฤ odpowiedni komunikat o bลฤdzie, gdy znajduje siฤ w ekstremalnych warunkach.
Czasami do przeprowadzenia testรณw warunkรณw skrajnych moลผna wykorzystaฤ ogromne zbiory danych, ktรณre mogฤ zostaฤ utracone podczas testรณw warunkรณw skrajnych. Testerzy nie powinni traciฤ danych zwiฤ zanych z bezpieczeลstwem podczas przeprowadzania testรณw warunkรณw skrajnych.
Gลรณwnym celem testรณw warunkรณw skrajnych jest upewnienie siฤ, ลผe system odzyska siลy po awarii, co nazywa siฤ odzyskiwalnoลฤ.
Testowanie obciฤ ลผeniowe a testowanie obciฤ ลผeniowe
| Testowanie obciฤ ลผenia | Testy warunkรณw skrajnych |
|---|---|
| Testowanie obciฤ ลผenia polega na przetestowaniu zachowania systemu w normalnych warunkach obciฤ ลผenia i jest to po prostu testowanie lub symulacja przy rzeczywistym obciฤ ลผeniu | Testy obciฤ ลผeniowe majฤ na celu sprawdzenie zachowania systemu w ekstremalnych warunkach i sฤ przeprowadzane aลผ do awarii systemu. |
| Testowanie obciฤ ลผenia nie psuje systemu | testy warunkรณw skrajnych prรณbujฤ zลamaฤ system, testujฤ c przytลaczajฤ ce dane lub zasoby. |
Rodzaje testรณw warunkรณw skrajnych
Poniลผej przedstawiono rodzaje testรณw wytrzymaลoลciowych, ktรณre moลผna znaleลบฤ poniลผej:
Rozproszone testy warunkรณw skrajnych:
W rozproszonych systemach klient-serwer testowanie odbywa siฤ na wszystkich klientach serwera. Rolฤ serwera stresu jest dystrybucja zestawu testรณw warunkรณw skrajnych do wszystkich klientรณw stresu i ลledzenie statusu klienta. Gdy klient skontaktuje siฤ z serwerem, serwer dodaje nazwฤ klienta i rozpoczyna wysyลanie danych do testรณw.
W miฤdzyczasie komputery klienckie wysyลajฤ sygnaล lub sygnaล pulsu potwierdzajฤ cy poลฤ czenie z serwerem. Jeลli serwer nie odbiera ลผadnych sygnaลรณw z komputera klienckiego, naleลผy go dokลadniej sprawdziฤ pod kฤ tem debugowania. Jak wynika z rysunku, serwer moลผe poลฤ czyฤ siฤ z 2 klientami (Klientem 1 i Klientem 2), ale nie moลผe wysyลaฤ ani odbieraฤ sygnaลu od Klientรณw 3 i 4.
Przebieg nocny jest najlepszฤ opcjฤ do przeprowadzenia scenariuszy testรณw warunkรณw skrajnych. Duลผe farmy serwerรณw potrzebujฤ bardziej wydajnej metody okreลlania, ktรณre komputery ulegลy awariom wymagajฤ cym zbadania.
Testowanie obciฤ ลผeniowe aplikacji:
Testy te koncentrujฤ siฤ na wyszukiwaniu defektรณw zwiฤ zanych z blokowaniem i blokowaniem danych, problemami z sieciฤ i wฤ skimi gardลami wydajnoลciowymi w aplikacji.
Transakcyjne testy warunkรณw skrajnych:
Wykonuje testy warunkรณw skrajnych dla jednej lub wiฤkszej liczby transakcji pomiฤdzy dwiema lub wiฤkszฤ liczbฤ aplikacji. Sลuลผy do dostrajania i optymalizacji systemu.
Systemowe testy warunkรณw skrajnych:
Jest to zintegrowany test warunkรณw skrajnych, ktรณry moลผna przetestowaฤ na wielu systemach dziaลajฤ cych na tym samym serwerze. Sลuลผy do wyszukiwania defektรณw, gdy dane jednej aplikacji blokujฤ innฤ aplikacjฤ.
Eksploracyjne testy warunkรณw skrajnych:
Jest to jeden z rodzajรณw testรณw warunkรณw skrajnych, ktรณry sลuลผy do testowania systemu przy nietypowych parametrach lub warunkach, ktรณre sฤ maลo prawdopodobne w rzeczywistym scenariuszu. Sลuลผy do wyszukiwania defektรณw w nieoczekiwanych sytuacjach, np
- Duลผa liczba uลผytkownikรณw zalogowaลa siฤ w tym samym czasie
- Jeลผeli skaner antywirusowy zostaล uruchomiony na wszystkich komputerach jednoczeลnie
- Jeลli baza danych zostaลa przeลฤ czona w tryb offline podczas uzyskiwania do niej dostฤpu ze strony internetowej,
- Gdy do bazy danych wprowadzana jest jednoczeลnie duลผa iloลฤ danych
Jak przeprowadziฤ testy warunkรณw skrajnych?
Proces testรณw warunkรณw skrajnych moลผna przeprowadziฤ w 5 gลรณwnych krokach:
Krok 1) Planowanie testu warunkรณw skrajnych: Tutaj zbierasz dane systemowe, analizujesz system, definiujesz cele testรณw warunkรณw skrajnych
Krok 2) Utwรณrz skrypty automatyzacji: W tej fazie tworzysz skrypty automatyzacji testรณw obciฤ ลผeniowych i generujesz dane testowe dla scenariuszy warunkรณw skrajnych.
Krok 3) Wykonanie skryptu: Na tym etapie uruchamiasz skrypty automatyzacji testรณw obciฤ ลผeniowych i przechowujesz wyniki testรณw obciฤ ลผeniowych.
Krok 4) Analiza wynikรณw: Na tym etapie analizujesz wyniki testu warunkรณw skrajnych i identyfikujesz wฤ skie gardลa.
Krok 5) Udoskonalanie i optymalizacja: Na tym etapie dostrajasz system, zmieniasz konfiguracje, optymalizujesz kod, aby osiฤ gnฤ ฤ poลผฤ dany poziom odniesienia.
Na koniec ponownie uruchamiasz caลy cykl, aby sprawdziฤ, czy poprawki przyniosลy poลผฤ dane rezultaty. Na przykลad nie jest niczym niezwykลym, ลผe osiฤ gniฤcie celรณw wydajnoลciowych wymaga przeprowadzenia od 3 do 4 cykli procesu testรณw obciฤ ลผeniowych
Narzฤdzia zalecane do testรณw obciฤ ลผeniowych
LoadRunner
LoadRunner firmy HP to szeroko stosowane narzฤdzie do testowania obciฤ ลผenia. Wyniki testu obciฤ ลผenia uksztaลtowane przez Loadrunner sฤ uwaลผane za punkt odniesienia.
Jmetr
Jmeter to narzฤdzie testowe Open Source. Jest to czyste Java aplikacja na stres i Test wydajnoลci. Jmeter jest przeznaczony do testowania takich typรณw testรณw jak testy obciฤ ลผeniowe, funkcjonalne, obciฤ ลผeniowe itp. Do dziaลania wymaga JDK 5 lub nowszego.
Tester stresu
Narzฤdzie to zapewnia obszernฤ analizฤ wydajnoลci aplikacji internetowych, dostarcza wyniki w formie graficznej i jest niezwykle proste w uลผyciu. Nie jest wymagane ลผadne skryptowanie wysokiego poziomu i zapewnia dobry zwrot z inwestycji.
Neo zaลadowaฤ
Jest to popularne na rynku narzฤdzie do testowania sieci i Mobile Aplikacje. To narzฤdzie moลผe symulowaฤ tysiฤ ce uลผytkownikรณw w celu oceny wydajnoลci aplikacji pod obciฤ ลผeniem i analizy czasรณw reakcji. Obsลuguje rรณwnieลผ integracjฤ z chmurฤ โ testy wydajnoลci, obciฤ ลผenia i warunkรณw skrajnych. Jest ลatwy w obsลudze, ekonomiczny i zapewnia dobrฤ skalowalnoลฤ.
Metryki do testรณw warunkรณw skrajnych
Metryki pomagajฤ w ocenie wydajnoลci systemu i sฤ zazwyczaj badane pod koniec testu warunkรณw skrajnych. Powszechnie stosowanymi metrykami sฤ โ
Pomiar skalowalnoลci i wydajnoลci
- Strony na sekundฤ: Mierzy liczbฤ ลผฤ danych stron na sekundฤ
- Przepustowoลฤ: Metryka podstawowa โ Rozmiar danych odpowiedzi/sekundฤ
- Rundy: liczba zaplanowanych scenariuszy testowych w porรณwnaniu z liczbฤ wykonaล klienta
Odpowiedลบ aplikacji
- Czas trafienia: ลredni czas pobrania obrazu lub strony
- Czas do pierwszego bajtu: czas potrzebny na zwrรณcenie pierwszego bajtu danych lub informacji
- Czas strony: czas potrzebny na pobranie wszystkich informacji na stronie
Awarie
- Nieudane poลฤ czenia: liczba nieudanych poลฤ czeล odrzuconych przez klienta (Weak Signal)
- Nieudane rundy: Liczba rund, w ktรณrych doszลo do niepowodzenia
- Nieudane trafienia: liczba nieudanych prรณb wykonanych przez system (uszkodzone ลฤ cza lub niewidoczne obrazy)
Wniosek
Celem testรณw warunkรณw skrajnych jest sprawdzenie systemu w ekstremalnych warunkach. Monitoruje zasoby systemowe, takie jak pamiฤฤ, procesor, sieฤ itp., i sprawdza zdolnoลฤ systemu do przywrรณcenia normalnego stanu. Sprawdza, czy system wyลwietla odpowiednie komunikaty o bลฤdach w czasie stresu.
Przykลad testรณw warunkรณw skrajnych
- Serwis e-commerce ogลasza festiwalowฤ wyprzedaลผ
- Serwis informacyjny w czasie niektรณrych waลผnych wydarzeล
- Strona internetowa z wynikami Rady ds. Edukacji
- Serwisy spoลecznoลciowe lub blogi, aplikacje itp

.png)
.png)

