Testowanie przejścia stanu – schemat i technika (przykład)

Co to jest testowanie przejścia stanu?

Testowanie przejścia stanu jest techniką testowania typu black box, w której zmiany wprowadzone w warunkach wejściowych powodują zmiany stanu lub zmiany wyjścia w testowanej aplikacji (AUT). Testowanie przejścia stanu pomaga analizować zachowanie aplikacji w różnych warunkach wejściowych. Testerzy mogą podawać dodatnie i ujemne wartości testowe wejścia i rejestrować zachowanie systemu.

Jest to model, na którym opiera się system i testy. Każdy system, w którym dla tego samego wejścia otrzymujemy inny wynik, w zależności od tego, co wydarzyło się wcześniej, jest systemem o skończonych stanach.

Technika testowania przejścia stanu jest pomocny tam, gdzie trzeba przetestuj różne przejścia systemowe.

Kiedy stosować zmianę stanu?

  • Można tego użyć, gdy tester testuje aplikację pod kątem skończonego zestawu wartości wejściowych.
  • Gdy tester próbuje przetestować sekwencję zdarzeń zachodzących w testowanej aplikacji. Oznacza to, że umożliwi to testerowi przetestowanie zachowania aplikacji dla sekwencji wartości wejściowych.
  • Kiedy testowany system jest zależny od zdarzeń/wartości z przeszłości.

Kiedy nie należy polegać na zmianie stanu?

  • Gdy testowanie nie jest wykonywane dla sekwencyjnych kombinacji wejść.
  • Jeśli testy mają być wykonane dla różnych funkcjonalności, np. testów eksploracyjnych

Cztery części diagramu przejścia stanu

Istnieją 4 główne elementy Modelu Przejścia Stanu, jak pokazano poniżej

1) Państwa jakie może uzyskać oprogramowanie

Zjednoczone

2) Przejście z jednego stanu do drugiego

Przejście

3) Wydarzenia że początek przejścia, takiego jak zamknięcie pliku lub wypłata pieniędzy

Wydarzenia

4) Działania które wynikają z przejścia (komunikat o błędzie lub otrzymanie gotówki).

Akcje

Diagram przejść stanów i tabela przejść stanów

Istnieją dwa główne sposoby przedstawiania lub projektowania przejścia stanu: diagram przejścia stanu i tabela przejść stanu.

Na diagramie przejścia stanu stany są pokazane w ramkach tekstowych, a przejście jest reprezentowane przez strzałki. Jest on również nazywany wykresem stanu lub grafem. Jest przydatny w identyfikowaniu prawidłowych przejść.

W tabeli przejść między stanami wszystkie stany są wymienione po lewej stronie, a zdarzenia opisane są na górze. Każda komórka w tabeli reprezentuje stan systemu po wystąpieniu zdarzenia. Nazywa się ją także tabelą stanu. Jest to przydatne w identyfikowaniu nieprawidłowych przejść.

Jak dokonać zmiany stanu (przykłady zmiany stanu)

1 przykład:

Rozważmy funkcję systemu ATM, w której jeśli użytkownik trzykrotnie wprowadzi nieprawidłowe hasło, konto zostanie zablokowane.

W tym systemie, jeśli użytkownik wprowadzi prawidłowe hasło w którejkolwiek z pierwszych trzech prób, zostanie pomyślnie zalogowany. Jeśli użytkownik wprowadzi nieprawidłowe hasło przy pierwszej lub drugiej próbie, zostanie poproszony o ponowne wprowadzenie hasła. I na koniec, jeśli użytkownik wprowadzi nieprawidłowe hasło 3rd czasie konto zostanie zablokowane.

Diagram przejść stanów

Diagram przejść stanów

Na schemacie każde wprowadzenie prawidłowego PIN-u powoduje przejście do stanu Dostęp przyznany, a w przypadku podania błędnego hasła następuje przejście do kolejnej próby i jeżeli zrobi to samo przez 3rd momencie osiągnięcia stanu zablokowania konta.

Tabela przejść między stanami

Poprawny PIN Nieprawidłowy PIN
S1) Rozpocznij S5 S2
S2) 1st próba S5 S3
S3) 2nd próba S5 S4
S4) 3rd próba S5 S6
S5) Dostęp przyznany - -
S6) Konto zablokowane - -

W tabeli po wprowadzeniu przez użytkownika prawidłowego PIN-u następuje przejście do stanu S5, czyli przyznanie Dostępu. A jeśli użytkownik wprowadzi błędne hasło, zostanie przeniesiony do następnego stanu. Jeśli on zrobi to samo 3rd czasie osiągnie stan zablokowania konta.

2 przykład:

Zanim odniesiesz się do poniższego przykładu, obejrzyj ten film dotyczący testowania przejścia stanu:

Kliknij tutaj jeśli film nie jest dostępny

Pamiętaj, że na ekranie logowania do rezerwacji lotu musisz wprowadzić poprawną nazwę agenta i hasło, aby uzyskać dostęp do wniosek o rezerwację lotu.

Wykres przejścia stanu
Wykres przejścia stanu

Daje dostęp do aplikacji z poprawnym hasłem i nazwą logowania, ale co się stanie, jeśli wprowadzisz błędne hasło.

Aplikacja umożliwia trzy próby, a jeśli przy czwartej próbie użytkownik wprowadzi błędne hasło, system automatycznie zamknie aplikację.

Wykresy stanu pomagają określić prawidłowe przejścia do przetestowania. W takim przypadku testowanie z poprawnym i nieprawidłowym hasłem jest obowiązkowe. Dla scenariusze testowe, zaloguj się na 2nd, 3rd i 4th próba, każdy może zostać przetestowany.

Możesz użyć tabeli stanów, aby określić nieprawidłowe przejścia systemowe.

Tabela przejść między stanami

W tabeli stanów wszystkie prawidłowe stany są wymienione po lewej stronie tabeli, a zdarzenia, które je powodują, na górze.

Każda komórka reprezentuje stan, do którego przejdzie system po wystąpieniu odpowiedniego zdarzenia.

Na przykład, będąc w stanie S1, wpiszesz prawidłowe hasło, zostaniesz przeniesiony do stanu S6 (Dostęp przyznany). Załóżmy, że jeśli przy pierwszej próbie wpisałeś nieprawidłowe hasło, zostaniesz przeniesiony do stanu S3 lub drugiej próby.

Podobnie możesz określić wszystkie inne stany.

Za pomocą tej metody podświetlane są dwa nieprawidłowe stany. Załóżmy, że jesteś w stanie S6, czyli jesteś już zalogowany do aplikacji, otwierasz kolejną instancję rezerwacji lotu i wprowadzasz ważne lub nieprawidłowe hasła dla tego samego agenta. Należy przetestować reakcję systemu na taki scenariusz.

Zalety i wady techniki przejścia stanu

Zalety Niedogodności
Ta technika testowania zapewni obrazową lub tabelaryczną reprezentację zachowania systemu, co umożliwi testerowi skuteczne zbadanie i zrozumienie zachowania systemu. Główną wadą tej techniki testowania jest to, że nie można na niej polegać za każdym razem. Na przykład, jeśli system nie jest systemem skończonym (nie w kolejności sekwencyjnej), tej techniki nie można zastosować.
Korzystając z tego testu, tester techniki może sprawdzić, czy wszystkie warunki zostały spełnione, a wyniki zostały zapisane Kolejną wadą jest konieczność zdefiniowania wszystkich możliwych stanów systemu. Chociaż jest to w porządku w przypadku małych systemów, wkrótce rozpada się na większe systemy, ponieważ następuje wykładniczy wzrost liczby stanów.

Podsumowanie

  • Testowanie przejścia stanu definiuje się jako technikę testowania, w której zmiany warunków wejściowych powodują zmiany stanu testowanej aplikacji.
  • In Inżynieria oprogramowaniaTechnika testowania przejść między stanami jest pomocna, gdy trzeba przetestować różne przejścia systemowe.
  • Dwa główne sposoby reprezentowania lub projektowania przejścia stanu, diagram przejścia stanu i tabela przejścia stanu.
  • Na diagramie przejść stanów stany są pokazane w ramkach, a przejścia są reprezentowane przez strzałki.
  • W tabeli przejść między stanami wszystkie stany są wymienione po lewej stronie, a zdarzenia opisane są na górze.
  • Główną zaletą tej techniki testowania jest to, że zapewnia ona obrazową lub tabelaryczną reprezentację zachowania systemu, co umożliwi testerowi skuteczne zbadanie i zrozumienie zachowania systemu.
  • Główną wadą tej techniki testowania jest to, że nie można na niej polegać za każdym razem.