Testowanie stabilności
Testowanie stabilności to rodzaj niefunkcjonalnego testowania oprogramowania przeprowadzanego w celu pomiaru wydajności i zdolności aplikacji do ciągłego działania przez długi okres czasu. Celem testów stabilności jest sprawdzenie, czy aplikacja ulegnie awarii lub ulegnie awarii podczas normalnego użytkowania w dowolnym momencie, poprzez pełne wykorzystanie jej zakresu.
Testowanie stabilności jest wykonywane w celu sprawdzenia wydajności opracowanego produktu poza normalną wydajnością operacyjną, często do punktu krytycznego. Większe znaczenie ma obsługa błędów, niezawodność oprogramowania, solidność i skalowalność produktu pod dużym obciążeniem, a nie sprawdzanie zachowania systemu w normalnych warunkach.
Testowanie stabilności ocenia problemy ze stabilnością. Testowanie to ma przede wszystkim na celu maksymalne obciążenie komponentu oprogramowania. Jest to technika niefunkcjonalna.
Testowanie stabilności jest również nazywane testem obciążeniowym lub testem wytrzymałościowym.
W tym samouczku nauczysz się:
- Co to jest testowanie stabilności?
- Problemy, jeśli testowany system nie przeszedł testu stabilności
- Dlaczego testy stabilności
- Jak przeprowadzić testy stabilności
- Przypadek testowy do testowania stabilności wydajności procesora
- Raporty z testów do testowania stabilności
Problemy, jeśli testowany system nie przeszedł testu stabilności
W przypadku testowanej aplikacji, w której wprowadza się dużą liczbę użytkowników i aplikacji, które muszą działać przez miesiące bez ponownego uruchamiania, może wystąpić szereg problemów:
Można się zmierzyć z możliwym błędem,
- system zwalnia
- system napotkał problemy z funkcjonalnością
- system zachowuje się przewodowo
- system całkowicie się zawiesza
W inżynierii oprogramowania testy stabilności zwykle obejmują ćwiczenie systemu z dużymi użytkownikami (wirtualnymi) i pomiar parametrów wydajnościowych w celu sprawdzenia, czy system może obsługiwać przewidywane obciążenie.
Dlaczego testy stabilności
Ten rodzaj testów pomaga użytkownikom zrozumieć, w jaki sposób system będzie działał w rzeczywistych sytuacjach.
W związku z tym testy stabilności pozwalają sprawdzić,
- Zapewnij sobie pewność co do stabilności testowanego systemu.
- Upewnij się, że Twój system może obsługiwać duże programy.
- Monitoruj efektywność swojego systemu.
- Test stabilności systemu pod obciążeniem.
Odgrywa ważną rolę w rozwoju produktu, ponieważ służy do określania ograniczeń testowanego oprogramowania przed jego wydaniem lub obszarów wymagających dalszych ulepszeń, zanim produkt zostanie uruchomiony lub na produkcji.
Bardzo powszechnym przykładem techniki testowania stabilności jest
O nLinia S hopping P ortals: Testowanie stabilności będzie sprawdzić jak strona będzie się zachowywał, gdy -
- Duża ilość danych wprowadzonych w godzinach szczytu
- Liczba trafień w określonym czasie
- Problem z wczytywaniem strony w tym samym czasie
- Zachowanie systemu
- Reakcja systemu i wiele innych podlega testom stabilności
Inny przykład
CPU test jest popularną formą testu stabilności w ramach techniki testowania wydajności. Ten test sprawdza stabilność procesora, a także monitoruje jego wydajność w miarę zwiększania obciążenia procesora.
Jak przeprowadzić testy stabilności
- Aby określić zakres i cel testów, musimy upewnić się, że serwery aplikacji nie ulegną awarii podczas wykonywania testu obciążenia.
- Aby określić problemy biznesowe, sprawdź wydajność i obciążenie systemu zgodnie z perspektywą użytkownika końcowego.
- Aby przypisać różne obowiązki i role, takie jak tworzenie planu testów, projektowanie przypadków testowych, przegląd przypadków testowych, wykonywanie testów itp.
- Zapewnienie wyników testu w określonym czasie
- Aby zapewnić odpowiednie narzędzia do testowania obciążenia i zespół doświadczony jest obecny przy tym samym.
- Aby zmierzyć ryzyko i koszty, należy przeprowadzić testowanie. To określi koszt każdego wykonania pod względem wykorzystania procesora i pamięci.
- Określ śledzenie i raportowanie defektów oraz odpowiednie mapowanie z wymaganiami.
Przypadek testowy do testowania stabilności wydajności procesora
- Aby zweryfikować górną granicę systemu.
- Jak system ulega awarii lub odzyskuje.
- Łączna liczba transakcji zakończonych na żądanie.
- Czy reakcja transakcji pozostaje stała, czy też rośnie w czasie.
- Jak system zachowuje się pod dużym obciążeniem.
- Jego reakcja i zachowanie pod dużym obciążeniem.
Raporty z testów do testowania stabilności
Podczas wykonywania testów zbieranych i mierzonych jest kilka statystyk; liczby te są analizowane w celu wygenerowania raportu i zidentyfikowania możliwych problemów z wydajnością.
Przykłady statystyk zebranych podczas testu to:
- Czasy reakcji transakcji : średni czas potrzebny na wykonanie transakcji podczas testu. Ta statystyka oceni, czy wydajność serwera mieści się w akceptowalnych minimalnych i maksymalnych okresach wydajności transakcji zdefiniowanych dla systemu.
Informacje te pozwolą ocenić czas potrzebny na przetworzenie żądania przez serwer WWW i wysłanie go do serwera aplikacji, który w większości przypadków wysyła żądanie do serwera bazy danych.
- Trafienia na sekundę: liczba trafień wykonanych na serwerze przez użytkowników. Ta statystyka pomaga określić liczbę obciążeń generowanych przez użytkowników w odniesieniu do liczby trafień.
- Przepustowość: ilość przepustowości na serwerze sieci Web podczas testu, mierzona w bajtach. Przepustowość oznacza ilość danych, które użytkownicy otrzymali z serwera w dowolnym momencie. Ta statystyka pomaga ocenić ilość obciążenia generowanego przez użytkowników.
- Transakcja na sekundę: jest to łączna liczba zakończonych transakcji (zarówno udanych, jak i nieudanych) wykonanych podczas testu. Ta statystyka pomaga sprawdzić rzeczywiste obciążenie systemu transakcjami.
- Procesor: procentowe wykorzystanie procesora podczas testu.
- Pamięć: użycie pamięci podczas testu.
- Dysk: wykorzystanie przestrzeni dyskowej wydanej podczas testu.
Do tego czasu możesz teraz łatwo zidentyfikować, że -
Testowanie stabilności podlega testom wydajności - technice wykonywanej w celu sprawdzenia niektórych atrybutów jakości oprogramowania, takich jak stabilność, niezawodność i dostępność.
Testowanie to służy do określenia szybkości działania systemu lub podsystemu przy określonym obciążeniu.
Testowanie wydajnościowe ma wiele typów, a jednym z nich jest testowanie stabilności.
- Testowanie warunków skrajnych : jest to rodzaj testowania, który sprawdza odporność systemu poza możliwościami systemu.
- Testowanie szczytowe: służy do sprawdzania zachowania systemu poprzez natychmiastowe zwiększenie obciążenia systemu. Celem jest sprawdzenie, w którym momencie system będzie miał problemy z wydajnością lub przejdzie.
- Testowanie skalowalności: służy do sprawdzania możliwości systemu. Jak skutecznie system będzie się zachowywał w przypadku rosnących potrzeb, zmian wielkości i objętości.
- Testowanie objętościowe: jest to technika testowania niefunkcjonalnego, w której testowane oprogramowanie jest poddawane ogromnej ilości danych, a zachowanie systemu jest odpowiednio sprawdzane i weryfikowane.
- Testowanie obciążenia lub stabilności : (już omówione powyżej)
Niektóre narzędzia do testowania wydajności są tak:
- POBIERZ WEB
- LoadRunner
- Apache JMeter
- NeoLoad
- CloudTest
- Loadstorm
- LoadUI
- WAPT
- LoadImpact
- Loadster
- Httperf
- OpenSTA
- Tester wydajności
- Testowanie w dowolnym miejscu
Wniosek:
Testowanie stabilności to niefunkcjonalny proces testowania zachowania aplikacji przy maksymalnym obciążeniu. Jest wykonywana w celu sprawdzenia skalowalności systemu w danym środowisku.
Ten artykuł jest autorstwa Vaibhav Chitransh