niedziela, 5 lutego 2017

Testowanie funkcjonalne - projektowanie przypadków użycia

Przypadek użycia - Use Case

 Co to takiego?

[ISTQB] 

przypadek użycia: Ciąg transakcji w dialogu pomiędzy użytkownikiem a systemem z namacalnym rezultatem

[WIKIPEDIA]

Przypadek użycia przedstawia interakcję pomiędzy aktorem (użytkownikiem systemu), który inicjuje zdarzenie oraz samym systemem jako sekwencję prostych kroków. 

[Z mojego doświadczenia]

Spis kolejnych czynności wykonywanych przez użytkownika i reakcji systemu odpowiadających tym czynnościom. Przypadki użycia są bardzo skuteczne do analizy wymagań funkcjonalnych i projektowania scenariuszy testowych.
W praktyce wspomnianym użytkownikiem nie musi być człowiek, może być urządzenie np. terminal płatniczy i kasa fiskalna.
Dokładność przypadków użycia powinna być dostosowana do potrzeb, zbyt dokładne odwracają uwagę od głównej funkcji (mogą również pokrywać się z testami na niższych poziomach), za mało szczegółowe mogą spowodować niedoprecyzowanie wymagań lub niewykrycie defektów. 

Kiedy stosować?

  • Do projektowania przypadków i scenariuszy testowych
  • Podczas analizy wymagań 
  • Do analizy przypadków alternatywnych (w tym negatywnych)
  • Do dokładnego opisania działania danej funkcji (mogą zastąpić lub uzupełnić zbiór wymagań funkcjonalnych) 
  • Gdy analizujemy konkretną funkcję systemu

Jak do tego podejść?

  1.  Opisz kolejne akcje które pojawią się po wywołaniu wybranej funkcji - wybierz główny, poprawny przebieg
  2. Jeśli w opisie przebiegu głównego użytkownik musi podjąć jakąś decyzję, dopisz przebieg atlernatywny - taki, w którym wybór użytkownika pada na inną opcję
  3. Powtórz krok 2 dla każdego wyboru użytkownika
  4. Przejrzyj wszystkie zapisane przypadki użycia i określ przypadki negatywne - zastanów się co mogłoby się stać nie tak w dowolnym punkcie tych przypadków (np. urządzenie się wyłączy, nie będzie dostępu do internetu)