Idea testowa a przypadek testowy

Idea testowa a przypadek testowy
Wiele organizacji boryka się z problemem szczegółowości przypadków testowych. Czy warto opisywać je z dokładnością do pojedynczej danej? A może warto zostawić przestrzeń do eksplorowania?

W poszukiwaniu różnych form notacji testów można wyróżnić kilka najpopularniejszych:

Przypadek testowy niskiego poziomu (za "Słownikiem wyrażeń związanych z testowaniem"):

Przypadek testowy z konkretnymi (na poziomie implementacji) wartościami wejściowymi i wynikami oczekiwanymi. Logiczne operatory z przypadków testowych wysokiego poziomu są zamieniane na konkretne wartości, które odpowiadają celom logicznych operatorów.
 

Przypadek testowy wysokiego poziomu (za "Słownikiem wyrażeń związanych z testowaniem"):

Przypadek testowy bez konkretnych (poziom implementacji) wartości danych wejściowych i oczekiwanych rezultatów. Używane są operatory logiczne; rzeczywiste wartości nie są jeszcze zdefiniowane i/lub dostępne.


Lista kontrolna (za Wikipedią, z poprawkami):

a) wykaz czynności (zwykle z możliwością zaznaczenia opcji TAK / NIE) przygotowywany dla skomplikowanych zadań w celu zapewnienia właściwej (optymalnej) kolejności i nie pominięcia żadnego istotnego etapu testowania.

b) wykaz czynności kontrolnych dla porównania stanu istniejącego ze stanem wzorcowym, opisanym tą listą, często z oceną stopnia zgodności.
 

Idea testowa (za publikacją w testerzy.pl) to pojęcie zaczerpnięte z testów eksploracyjnych, gdzie poprzez eksplorację chcemy osiągnąć jakiś cel. Cel ten zdefiniowany jest jako atomowa idea testowa. Możemy ogólnie powiedzieć o pomyśle na weryfikację systemu poprzez sformułowanie krótkiego opisu tego, co będziemy chcieli osiągnąć (czasami mówi się o opisie o 140 znakach).

Próbując opisać relacje między nimi możemy pokusić się o wyróżnienie formalizmów oraz dokładności opisów:



alt

 

Organizacje minimalizujące formalizmy i stawiające na testowanie przy użyciu doświadczonych testerów mogą pozwolić sobie na testy eksploracyjne w oparciu o idee testowe. Mogą one również stosować przypadki testowe wysokiego poziomu (nie jest to jednak standard).

Testowanie w oparciu o przypadki testowe niskiego poziomu skuteczne będzie tam, gdzie istnieje grupa doświadczonych testerów tworzących przypadki testowe dla mniej doświadczonych kolegów. Przypadek taki nie tylko służy bardziej precyzyjnemu raportowaniu, ale również jest formą przekazywania wiedzy.

Opcją pośrednią będą listy kontrolne, bardziej szczegółowe i bardziej formalne od idei testowych, ale nie dające szczegółowego opisu poszczególnych działań.



Przykład

Jeśli wymaganie biznesowe brzmi:

Użytkownik posiadający login, który istnieje w bazie i przypisane jest do niego hasło, może zalogować się do aplikacji.

to:

Idea testowa - Przetestuj logowanie się do aplikacji.

Przypadek testowy wysokiego poziomu - Użytkownik loguje się do aplikacji przy użyciu loginu i hasła.

Lista kontrolna (dwie propozycje) - Użytkownik z poprawnym loginem i hasłem może się zalogować; użytkownik z poprawnym loginem i niepoprawnym hasłem nie może się zalogować,...

Przypadek testowy niskiego poziomu (pierwszy przypadek) - Użytkownik zaloguje się poprawnie do aplikacji przy użyciu istniejącego w systemie loginu "jkowalski" i przypisanego do niego hasła "abc123",...

 

 

To powinno Cię zainteresować