Co to jest scenariusz testowy w testowaniu oprogramowania (przykłady)

⚡ Inteligentne podsumowanie

Scenariusz testowy w testowaniu oprogramowania Definiuje wszelkie funkcjonalności, które można zweryfikować, aby zapewnić pełne pokrycie zachowania aplikacji w warunkach rzeczywistych. Kładzie nacisk na kompleksową walidację, projektowanie testów zorientowane na użytkownika oraz możliwość śledzenia zgodności z wymaganiami, aby zapewnić krytyczną dla biznesu weryfikację przepływu.

  • Koncepcja główna: Scenariusz testowy przedstawia funkcjonalność lub warunek możliwy do przetestowania, który weryfikuje określoną ścieżkę użytkownika lub zachowanie systemu w testowanej aplikacji.
  • Cel testowania: Testowanie scenariuszy weryfikuje przepływy kompleksowe, a nie odizolowane przypadki, co pozwala na prawidłową ocenę złożonych problemów i ścieżek wykorzystania w świecie rzeczywistym.
  • Logika tworzenia: Scenariusze pochodzą z dokumentów wymagań (BRS, SRS, FRS) i są mapowane na działania użytkowników, potencjalne nadużycia i cele techniczne w celu określenia pełnego pokrycia.
  • Skupienie na identyfikowalności: Każdy scenariusz musi odpowiadać jednemu lub większej liczbie wymagań określonych w macierzy śledzenia, co gwarantuje, że żadna funkcja nie pozostanie nieprzetestowana.
  • Strategia optymalizacji: Revprzeglądaj i ustalaj priorytety scenariuszy, aby odpowiadały priorytetom klienta, ponieważ realizacja wszystkich może wymagać dużych zasobów.
  • Kryteria wyłączenia: Scenariusze nie są tworzone w przypadku niestabilnych aplikacji, pilnych poprawek błędów lub kontekstów Agile, w których szybkie iteracje zastępują formalną dokumentację scenariusza.
  • Praktyczne zastosowanie: Przykładowe domeny obejmują handel elektroniczny (logowanie, płatności, historia zamówień) i bankowość (uwierzytelnianie, przelewy, depozyty).

Scenariusze testowe

Co to jest scenariusz testowy?

A Scenariusz testowy To ogólny opis testowanej funkcjonalności. Reprezentuje on możliwą interakcję użytkownika lub zachowanie systemu, czasami nazywane warunkiem testowym. Jako tester powinieneś wczuć się w rolę użytkownika końcowego i przeanalizować rzeczywiste scenariusze i przypadki użycia testowanej aplikacji (AUT).

Scenariusze testowe można klasyfikować na podstawie jaki aspekt aplikacji Mają one na celu weryfikację. Zrozumienie tych typów zapewnia pełne pokrycie wszystkich funkcjonalności i interakcji użytkownika.

Rodzaje scenariuszy testowych

  1. Scenariusze funkcjonalne: Sprawdzają one, czy określone funkcje lub moduły (takie jak logowanie, rejestracja czy finalizacja zakupu) działają zgodnie z wymaganiami. Koncentrują się na aspekcie „co powinny robić”.
  2. Scenariusze niefunkcjonalne: Oceniają one sposób działania systemu, a nie to, co on robi — obejmują one wydajność, skalowalność, użyteczność i niezawodność.
  3. Scenariusze bezpieczeństwa: Oceniają one, w jakim stopniu aplikacja chroni dane użytkownika i zapobiega nieautoryzowanemu dostępowi lub lukom w zabezpieczeniach.
  4. Scenariusze UI (interfejsu użytkownika): Gwarantują one intuicyjne działanie układu wizualnego, nawigacji i elementów interaktywnych na różnych urządzeniach i ekranach o różnych rozmiarach.
  5. Scenariusze kompleksowe: Symulują one rzeczywiste przepływy pracy, sprawdzając, czy wiele modułów współpracuje ze sobą bezproblemowo — na przykład wyszukiwanie, dodawanie do koszyka i dokonywanie płatności w aplikacji eCommerce.

Czy testowanie scenariuszy jest tym samym, co testowanie scenariuszy?

Podczas gdy scenariusze testowe definiują, co należy testować, Testowanie scenariuszy jest metodą, w której złożone, kompleksowe lub rzeczywiste historie użytkowników Są wykorzystywane do testowania, często zamiast polegać wyłącznie na wyczerpującej liście pojedynczych przypadków testowych. Celem jest ocena wydajności systemu w konkretnym, realistycznym przepływie pracy.

Przeanalizujmy to za pomocą poniższego filmu –

Po co tworzyć scenariusze testowe?

Scenariusze testowe są tworzone z następujących powodów:

  • Tworzenie scenariuszy testowych pomaga zagwarantować, że podczas testowania zostaną uwzględnione najważniejsze przypadki użycia.
  • Scenariusze testowe mogą być przeglądane i zatwierdzane przez interesariuszy, takich jak analitycy biznesowi, programiści i klienci, aby zapewnić dokładne przetestowanie testowanej aplikacji (AUT). Zapewnia to, że oprogramowanie działa w najczęściej spotykanych przypadkach użycia.
  • Służą jako szybkie narzędzie do określania nakładu pracy związanego z testowaniem i na tej podstawie tworzenia oferty dla klienta lub organizowania siły roboczej.
  • Pomagają określić najważniejsze kompleksowe transakcje lub rzeczywiste wykorzystanie aplikacji.
  • Aby zbadać kompleksowe działanie programu, kluczowe znaczenie ma scenariusz testowy.

👉 Zapisz się na bezpłatny projekt testowania oprogramowania na żywo

Kiedy nie należy tworzyć scenariusza testowego?

Scenariusze testowe mogą nie zostać utworzone, gdy

  • Unikaj tworzenia scenariuszy testowych, gdy aplikacja jest złożona lub niestabilna albo gdy harmonogram projektu jest zbyt krótki, aby utworzyć ustrukturyzowaną dokumentację.
  • Projekty realizowane zgodnie z metodyką Agile, np. Scrum czy Kanban, mogą nie tworzyć scenariuszy testowych.
  • Scenariusze testowe nie mogą być tworzone na nowo w celu naprawy nowego błędu lub Testy regresji jeśli zostały już udokumentowane w poprzednich cyklach testowych. W takich przypadkach scenariusze testowe muszą być już szczegółowo udokumentowane w poprzednich cyklach testowych. Dotyczy to szczególnie projektów konserwacyjnych.

Jak pisać scenariusze testowe

Jako tester możesz wykonać pięć kroków, aby utworzyć scenariusze testowe:

Napisz scenariusze testowe

  • Krok 1Przeczytaj dokumenty wymagań, takie jak BRS, SRS, FRS, testowanego systemu (SUT). Możesz również zapoznać się z przypadkami użycia, książkami, instrukcjami itp. dotyczącymi testowanej aplikacji.
  • Krok 2: Dla każdego wymagania określ możliwe działania i cele użytkownika. Określ techniczne aspekty wymagania. Określ możliwe scenariusze nadużyć systemu i oceń użytkowników z perspektywy hakera.
  • Krok 3: Po zapoznaniu się z dokumentem wymagań i przeprowadzeniu analizy due diligence, wypisz różne scenariusze testowe, które zweryfikują każdą funkcję oprogramowania.
  • Krok 4: Po sporządzeniu listy wszystkich możliwych scenariuszy testowych: a Macierz śledzenia jest tworzony w celu sprawdzenia, czy każdemu wymaganiu odpowiada odpowiedni scenariusz testowy
  • Krok 5: Utworzone scenariusze są weryfikowane przez Twojego przełożonego. Later, są one również przeglądane przez innych Interesariuszy projektu.

W jaki sposób AI może pomóc w automatyzacji scenariuszy testowych?

Sztuczna inteligencja (AI) rewolucjonizuje automatyzację scenariuszy testowych, czyniąc ją inteligentniejszą, szybszą i bardziej adaptacyjną niż tradycyjne skrypty. Zamiast ręcznego pisania skryptów do każdego testu, narzędzia oparte na sztucznej inteligencji mogą automatycznie generować scenariusze testowe na podstawie historii użytkowników, wymagań, a nawet danych historycznych. Platformy wykorzystujące uczenie maszynowe analizują wzorce wcześniejszych niepowodzeń testów, aby przewidywać obszary wysokiego ryzyka, pomagając testerom skupić się na tym, co naprawdę ważne.

Platformy automatyzacji oparte na sztucznej inteligencji potrafią samodzielnie naprawiać skrypty – automatycznie aktualizując lokalizatory po zmianie interfejsu użytkownika, co znacznie skraca czas konserwacji. Integrują się również z rurociągi CI/CD, zapewniając ciągłe testowanie i informacje zwrotne w czasie rzeczywistym.

Na przykład silnik sztucznej inteligencji może symulować tysiące ścieżek użytkowników na stronie handlu elektronicznego, wykrywać uszkodzone przepływy, a nawet sugerować zoptymalizowane pokrycie testowe.

Wskazówki dotyczące tworzenia scenariuszy testowych

  • Każdy scenariusz testowy powinien być powiązany z co najmniej jednym wymaganiem lub historią użytkownika zgodnie z metodologią projektu.
  • Przed utworzeniem scenariusza testowego, który weryfikuje wiele wymagań jednocześnie, upewnij się, że masz scenariusz testowy, który sprawdza to wymaganie oddzielnie.
  • Unikaj tworzenia zbyt skomplikowanych scenariuszy testowych obejmujących wiele wymagań.
  • Liczba scenariuszy może być duża, a uruchomienie ich wszystkich jest kosztowne. W oparciu o priorytety klienta, uruchamiaj tylko wybrane scenariusze testowe.

Wskazówka dla studentów: Scenariusz testowy opisuje, co należy testować; przypadek testowy opisuje, jak to testować.

Przykład 1: Scenariusz testowy dla aplikacji eCommerce

W przypadku aplikacji eCommerce byłoby kilka scenariuszy testowych

Scenariusz testowy 1: Sprawdź funkcjonalność logowania

Scenariusz testowy aplikacji eCommerce

Aby pomóc Ci zrozumieć różnicę w scenariuszu testowym i Przypadki testowe, byłyby to konkretne przypadki testowe dla tego Scenariusza Testowego

  1. Sprawdź zachowanie systemu po wprowadzeniu prawidłowego adresu e-mail i hasła.
  2. Sprawdź zachowanie systemu w przypadku wprowadzenia nieprawidłowego adresu e-mail i prawidłowego hasła.
  3. Sprawdź zachowanie systemu w przypadku podania prawidłowego adresu e-mail i nieprawidłowego hasła.
  4. Sprawdź zachowanie systemu w przypadku wprowadzenia nieprawidłowego adresu e-mail i hasła.
  5. Sprawdź zachowanie systemu, gdy adres e-mail i hasło pozostaną puste, a w polu Zaloguj się zostanie wpisane.
  6. Sprawdź Nie pamiętam hasła, które działa zgodnie z oczekiwaniami
  7. Sprawdź zachowanie systemu po wprowadzeniu prawidłowego/nieprawidłowego numeru telefonu i hasła.
  8. Sprawdź zachowanie systemu, gdy zaznaczona jest opcja „Zachowuj podpis”.

Jak widać, przypadki testowe są bardziej szczegółowe.

Scenariusz testowy 2: Sprawdź funkcjonalność wyszukiwania

Scenariusz testowy aplikacji eCommerce

Scenariusz testowy 3: Sprawdź produkt DescriptStrona jonowa

Scenariusz testowy aplikacji eCommerce

Scenariusz testowy 4: Sprawdź funkcjonalność płatności

Scenariusz testowy aplikacji eCommerce

Scenariusz testowy 5: Sprawdź historię zamówień

Scenariusz testowy aplikacji eCommerce

Oprócz tych 5 scenariuszy, poniżej znajduje się lista wszystkich pozostałych scenariuszy

  • Sprawdź zachowanie strony głównej dla powracających klientów
  • Sprawdź strony kategorii/produktów
  • Sprawdź strony obsługi klienta/kontaktu
  • Sprawdź strony z ofertami dziennymi

Przykład 2: Scenariusze testowe dla witryny bankowej

Scenariusz testowy 1: Sprawdź funkcjonalność logowania i uwierzytelniania

Scenariusz testowy 2: Sprawdź, czy można wykonać przelew pieniężny

Scenariusz testowy 3: Można wyświetlić wyciąg z konta

Scenariusz testowy 4: Sprawdź, czy można utworzyć depozyt stały/depozyt okresowy

I tak dalej…

Szablon scenariusza testowego

Pobierz szablon scenariusza testowego Excel (.xlsx)

Typowe wyzwania i błędy w scenariuszach testowych

Tworzenie efektywnych scenariuszy testowych brzmi prosto, ale często wiąże się z pułapkami. Oto kilka typowych wyzwań i błędów, z którymi borykają się testerzy:

  • Niejasne wymagania: Niejednoznaczne lub zmieniające się wymagania prowadzą do niekompletnych lub nieistotnych scenariuszy.
  • Nakładające się scenariusze: Powtarzające się scenariusze marnują czas i powodują zamieszanie w wykonywaniu testów.
  • Ignorowanie przypadków skrajnych: Skupianie się wyłącznie na typowych ścieżkach pomija poważne defekty.
  • Słaba priorytetyzacja: Traktowanie wszystkich scenariuszy jednakowo opóźnia testowanie funkcji o dużym znaczeniu.
  • Nadmierne szczegóły: Zbyt skomplikowane scenariusze utrudniają konserwację i zmniejszają elastyczność.
  • Brak identyfikowalności: Brakujące powiązania między wymaganiami i scenariuszami powodują luki w pokryciu.
  • Zaniedbanie gotowości do automatyzacji: Tworzenie scenariuszy nieodpowiednich do automatyzacji ogranicza skalowalność.

FAQ

Scenariusz testowy to ogólny opis działania użytkownika lub przepływu pracy, który wymaga walidacji. Określa on, co należy przetestować, a nie procedurę krok po kroku, co pomaga zapewnić prawidłowe działanie krytycznych ścieżek użytkownika.

Scenariusze testowe opisują, co wymaga przetestowania, a generowane przez sztuczną inteligencję przypadki testowe dostarczają szczegółowych kroków i danych. Scenariusze wyznaczają strategiczne pokrycie, a AI rozszerza je do wykonywalnych testów, które dostosowują się do zmieniających się zachowań systemu.

Przypadek użycia opisuje pełną interakcję między użytkownikiem a systemem, podczas gdy scenariusz to konkretna instancja lub ścieżka w ramach tego przypadku użycia. Wszystkie scenariusze wpisują się w szersze, bardziej ustrukturyzowane przypadki użycia.

Cztery typowe etapy testowania to: testy jednostkowe, testy integracyjne, testy systemowe i testy akceptacyjne. Razem weryfikują one poszczególne komponenty, ich interakcje, zachowanie całego systemu oraz ostateczną gotowość do użytku w warunkach rzeczywistych.

Systemy oparte na sztucznej inteligencji generują zmienne wyniki, co sprawia, że ​​wyczerpujące przypadki testowe są niepraktyczne. Scenariusze testowe zapewniają szerszy zakres analizy behawioralnej poprzez weryfikację przepływów użytkowników, decyzji algorytmicznych i interakcji z modelami w realistycznych warunkach, zwiększając niezawodność w środowiskach adaptacyjnych.

Testowanie scenariuszy umożliwia narzędziom automatyzacji walidację całych przepływów pracy, a nie pojedynczych kroków. Takie podejście odzwierciedla rzeczywiste zachowania użytkowników, dzięki czemu zestawy testów są bardziej odporne na zmiany w interfejsie użytkownika i wysoce skuteczne w przypadku złożonych procesów automatyzacji regresji.

Testowanie scenariuszowe sprawdza, jak system zachowuje się w realistycznych sytuacjach, w których użytkownik końcowy jest narażony na niebezpieczeństwo. Jego celem jest wykrycie usterek, które pojawiają się tylko wtedy, gdy wiele funkcji wchodzi w interakcję, zapewniając płynne działanie produktu w rzeczywistych warunkach.

Podsumuj ten post następująco: